Koje su glavne zadatke koje rešava Spring framework u razvoju aplikacija?
Java
Koje su prednosti i mane korišćenja indeksa za pojedinačne kolone u bazi podataka?
Koje vrste indeksa postoje u sistemima za upravljanje bazama podataka SQL?
Šta može dovesti do pogoršanja performansi funkcije?
Koje korake ćeš preduzeti da utvrdiš uzroke redovnih ponovnih pokretanja usluge povezane sa greškom OutOfMemoryError?
Можете ли да објасните концепт Stream API у Јави и како се користи за обраду података?
Да ли имате искуство у комуникацији са добављачима података или ресурса?
Могу ли цикличне зависности довести до цурења меморије у програму?
Механизам рада оператора SELECT FOR UPDATE у базама података и његова улога у управљању конкурентним приступом
Pročitajte kod i istaknite greške /** * Klijent sa kupljenom kartom može za dodatnu naknadu odabrati određeno mesto. * Osnovna cena mesta određuje se tarifama (spoljni servis). * Za klijente sa određenim tarifama (PREMIUM, ULTRA) potrebno je napraviti popust pri plaćanju. * Pri rezervaciji, klijentu se izdaje račun za plaćanje. Upravljanje plaćanjem vrši se putem spoljnog servisa. */ @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 kod mesta (npr. 19A) * @param ticketId ID karte */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //rezervišemo var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //tražimo osnovnu cenu za odabrano mesto u avionu var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //tražimo podatke o klijentu Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Pronađen korisnik " + userData.getFio() + " broj dokumenta " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //popust 50% price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //popust 20% price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //izdajemo račun paymentClient.sendInvoice(invoice); System.out.println("Račun izdat"); } @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; }
Zašto se javlja izuzetak ConcurrentModificationException kada se tokom iteracije istovremeno modifikuje ArrayList?
Koje metode mogu povećati brzinu pretraživanja u tabeli?
Можете ли објаснити како је структура наслеђивања изузетака у језику програмирања организована?
Можете ли објаснити шта подразумева атомски тип података?
Објасните концепт брисања типа и његову главну сврху у програмирању.
Можете ли да набројите главне методе које пружа Stream API у Јави?
Koje korake preduzimate ako, sa povećanjem opterećenja sistema, kašnjenja u izvršavanju upita u bazu podataka postanu značajna?
Na koje načine možeš povećati brzinu izvršavanja ove metode?
Можете ли објаснити принцип рада песимистичког закључавања и у чему се разликује од друге стратегије закључавања?
Šta razlikuje optimistički pristup blokadama od pesimističkog u kontekstu upravljanja konkurencijom u bazama podataka?