What is garbage collection in Java?
Java
How to write a custom (user-defined) exception in Java?
Do you have practical experience working with the Kafka messaging system?
What variables can lambda expressions in Java access?
What problems can arise from not using transactions in an application?
What are the main professional tasks and achievements you plan to accomplish in the near future?
What factors influence data access speed in SQL?
What does Maven provide when building a project?
In what situations is it recommended to use the CopyOnWriteArrayList data structure in a multithreaded environment?
How to merge two different branches in Git?
Is it possible to implement a functional interface with two abstract methods?
What makes integration tests less preferable for you?
Can a value in a column with a FOREIGN KEY constraint be NULL?
What is the difference between map and flatMap operations?
What access modifiers do fields and methods have in default interfaces?
What is the data storage format JSON?
Read the code and highlight errors. /** * A client with a purchased ticket can choose a specific seat for an additional fee. * The base price of seats is determined by tariffs (external service). * For clients with certain tariffs (PREMIUM, ULTRA), a discount is applied at payment. * When booking, an invoice is issued to the client for payment. Payment management is handled by a third-party service. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Booking. * @param seatCode seat code (e.g., 19A) * @param ticketId ticket ID */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //book var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //find base tariff for the selected seat on the plane var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //find customer data Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("User found " + userData.getFio() + " document number " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //50% discount price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //20% discount price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //issue invoice paymentClient.sendInvoice(invoice); System.out.println("Invoice issued"); } @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; }
What is the difference between the dependency and dependencyManagement sections in a Maven configuration file?
Why are ArrayList and array the fundamental data structures in Java?
What types of table joins have you used in your SQL queries?