Java
Porozprávajte o životnom cykle Maven.
Aké reštaurácie alebo kaviarne odporúčaš navštíviť?
Aké nástroje a knižnice na automatizované testovanie ste používali vo svojich projektoch?
Čo sa deje vo vnútri ArrayList pri vkladaní prvku do jeho stredu?
Ako sa líšia statické a dynamické viazanie metód v Jave a aké sú ich vlastnosti?
Môžete vysvetliť rozdiel medzi pojmami polymorfizmus a abstrakcia v objektovo orientovanom programovaní?
Prečítajte kód a zvýraznite chyby /** * Klient s kúpeným lístkom môže za dodatočný poplatok vybrať konkrétne miesto. * Základná cena miest sa určuje tarifami (vonkajší servis). * Pre klientov s určitými tarifami (PREMIUM, ULTRA) je potrebné urobiť zľavu pri platbe. * Pri rezervácii je klientovi vystavená faktúra na platbu. Správa platby sa vykonáva v externom servise. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Rezervácia. * @param seatCode kód miesta (napríklad 19A) * @param ticketId ID lístka */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //rezervujeme var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //hľadáme základnú cenu pre vybrané miesto v lietadle var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //hľadáme údaje o klientovi Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Nájdený používateľ " + userData.getFio() + " číslo dokladu " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //zľava 50% price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //zľava 20% price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //vystavujeme faktúru paymentClient.sendInvoice(invoice); System.out.println("Faktúra vystavená"); } @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; }
Aký je hlavný rozdiel medzi rozhraniami Comparable a Comparator v Jave pri zoradení objektov?
Aké zdroje používaš na vyhľadávanie študijných materiálov a aktualizácií v oblasti technológií?
Je možné naviazať spojenia medzi rôznymi kolekciami v databáze MongoDB?
Čím sú tvorené dotazy do databázy?
Akými hodnotami sa predvolene inicializujú premenné v Jave?
Aký je poradok volania konštruktorov a blokov inicializácie s prihliadnutím na hierarchiu tried?
Môžete vysvetliť, ako prebieha útok typu SQL Injection a ako využíva zraniteľnosti v databáze?
V čom spočíva rozdiel medzi databázami SQL a NoSQL?
Kde sa používa anotácia @Bean?
Kde je najlepšie použiť dedičstvo a asociáciu v programovaní?
Čo je to idempotentnosť metódy?
Aký prístup k autentifikácii a autorizácii je implementovaný v Spring Security vo vašom projekte?
Aký je rozdiel medzi metódami HTTP požiadaviek?