Java
Biznes mantiqasi kontekstida, equals metodini amalga oshirishda entiyaning barcha maydonlarini hisobga olish shartmi?
So'nggi loyihangizda ma'lumotlar bazalarini nazorat qilish va boshqarishni kim amalga oshirdi?
Java'da istisno (Exception) va xato (Error) o'rtasidagi farq nima?
Loyihalaringizda Repeatable Read izolyatsiya darajasini qo'lladizmi?
Dasturda siklik bog'liqliklar xotira oqiblariga olib keladimi?
Maven ning hayot aylanishi haqida gapiring.
Loyihalaringizda avtomatlashtirilgan test uchun qanday asboblar va kutubxonalarni ishlatgansiz?
Ta'lim platformasini avtomatlashtirish uchun tizim yaratishda qanday muammolarga duch keldingiz?
Ob'ektga yo'naltirilgan dasturlashda polimorfizm va abstraktsiya tushunchalari orasidagi farqni tushuntirib bera olasizmi?
Kodni o'qing va xatolarni ta'kidlang /** * Xarid qilingan chiptasi bo'lgan mijoz qo'shimcha to'lov evaziga muayyan o'rindiqni tanlashi mumkin. * O'rindiqlarning asosiy narxi tariflar (tashqi xizmat) tomonidan belgilanadi. * Maxsus tariflarga (PREMIUM, ULTRA) ega mijozlar uchun to'lovda chegirma qilish kerak. * Bron qilishda mijoz uchun to'lov uchun hisob-faktura chiqariladi. To'lovni boshqarish tashqi xizmatda amalga oshiriladi. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Bron qilish. * @param seatCode o'rindiq kodi (masalan, 19A) * @param ticketId chipta IDsi */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //bron qilamiz var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //samolyotda tanlangan o'rindiq uchun asosiy tarifni topamiz var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //mijoz ma'lumotlarini topamiz Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Topilgan foydalanuvchi " + userData.getFio() + " hujjat raqami " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //50% chegirma price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //20% chegirma price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //hisob-faktura chiqaramiz paymentClient.sendInvoice(invoice); System.out.println("Hisob-faktura yuborildi"); } @Data @Table("seat_booking") public class SeatBooking { @Column private String seatCode; @Column private UUID flightId; @Column private UUID ticketId; @Column private BookingStatus status; } public enum BookingStatus { BOOKED, PAID; }
Java'da obyektlarni saralashda Comparable va Comparator interfeyslari o'rtasidagi asosiy farq nima?
Texnologiya sohasida o'quv materiallari va yangilanishlarni qidirishda qanday manbalardan foydalanasiz?
MongoDB ma'lumotlar bazasida turli to'plamlar o'rtasida bog'lanishlar o'rnatish mumkinmi?
Ma'lumotlar bazasiga so'rovlar qanday shakllantiriladi?
Java'da o'zgaruvchilar standart ravishda qanday qiymatlar bilan boshlanadi?
Klasslar hierarxiyasini hisobga olgan holda konstruktorlar va boshlang'ich bloklarning chaqirilish tartibi qanday?
SQL Injection turidagi hujum qanday amalga oshirilishini va u ma'lumotlar bazasidagi zaifliklardan qanday foydalanishini tushuntirib bera olasizmi?
SQL va NoSQL ma'lumotlar bazalari o'rtasidagi farq nima?
@Bean anotatsiyasi qaerdadir ishlatiladi?
Dasturlashda meros va assotsiatsiyani qayerda qo'llash yaxshiroq?