Java
Kaip galima palyginti duomenų tipus Java?
Kas nutiks, jei bandysite gauti tą patį bean kelis kartus ApplicationContext'e?
Ar verslo logikos kontekste būtina atsižvelgti į visus entiteto laukus implementuojant equals metodą?
Kas atliko jūsų paskutinio projekto duomenų bazių kontrolę ir valdymą?
Kuo skiriasi išimtis (Exception) ir klaida (Error) Java?
Ar savo projektuose naudojote pakartotinai skaitomą izoliacijos lygį?
Ar ciklinės priklausomybės gali sukelti atminties nutekėjimą programoje?
Ar turėjote atvejų, kai kūrėte ar diegėte komponentą ar mechanizmą, panašų į Starter?
Kokius įrankius ir bibliotekas naudojote automatizuotam testavimui savo projektuose?
Ar Stream naudojimas paveiks Java operacijų vykdymo greitį?
Su kokiomis iššūkiais susidūrėte kuriant sistemą švietimo platformai automatizuoti?
Ar galite paaiškinti skirtumą tarp polimorfizmo ir abstrakcijos sąvokų objektinio programavimo srityje?
Skaitykite kodą ir pažymėkite klaidas /** * Klientas, įsigijęs bilietą, gali už papildomą mokestį pasirinkti konkretų vietą. * Pagrindinė vietų kaina nustatoma tarifais (išorinis paslaugų teikėjas). * Kai kuriems klientams su tam tikrais tarifais (PREMIUM, ULTRA) reikia taikyti nuolaidą apmokėjimo metu. * Rezervuojant klientui išrašomas sąskaita apmokėjimui. Mokėjimo valdymas vyksta išoriniuose servisuose. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Rezervacija. * @param seatCode vietos kodas (pvz., 19A) * @param ticketId bilieto ID */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); // rezervuojame var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); // ieškome bazinės kainos pasirinktam vietai lėktuve var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); // ieškome kliento duomenų Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Rasta naudotojas " + userData.getFio() + " dokumento numeris " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { // 50% nuolaida price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { // 20% nuolaida price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); // išrašome sąskaitą paymentClient.sendInvoice(invoice); System.out.println("Sąskaita išrašyta"); } @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; }
Ar galite papasakoti apie skirtingus propagation tipus, kuriuos galima nustatyti @Transactional anotacijoje?
Kokia pagrindinė skirtumas tarp Comparable ir Comparator sąsajų Java kalboje, kai rūšiuojami objektai?
Kokius šaltinius naudojate mokymosi medžiagų ir naujinimų paieškai technologijų srityje?
Ar įmanoma sukurti ryšius tarp skirtingų kolekcijų MongoDB duomenų bazėje?
Kaip formuojami užklausos į duomenų bazę?
Kokias reikšmes pagal numatytuosius nustatymus turi inicializuoti kintamieji Java?
Kokiu būdu kviečiami konstruktoriai ir inicializacijos blokai, atsižvelgiant į klasių hierarchiją?