Welche Hauptaufgaben löst das Spring-Framework bei der Anwendungsentwicklung?
Java
Welche Arten von Indizes gibt es in SQL-Datenbankverwaltungssystemen?
Haben Sie die SELECT-Konstruktion bei Datenaktualisierungsoperationen (UPDATE) verwendet?
Können Sie das Konzept der Stream API in Java erklären und wie sie zur Datenverarbeitung verwendet wird?
Können zyklische Abhängigkeiten zu Speicherlecks in einem Programm führen?
Was kann zu einer Verschlechterung der Leistung einer Funktion führen?
Lesen Sie den Code und markieren Sie die Fehler /** * Ein Kunde mit einem gekauften Ticket kann gegen eine zusätzliche Gebühr einen bestimmten Sitzplatz wählen. * Der Grundpreis der Sitze wird durch Tarife (externen Service) bestimmt. * Für Kunden mit bestimmten Tarifen (PREMIUM, ULTRA) ist bei der Bezahlung ein Rabatt zu gewähren. * Bei der Buchung wird eine Rechnung für die Zahlung ausgestellt. Die Zahlungsverwaltung erfolgt in einem externen 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; /** * Buchung. * @param seatCode Sitzplatzcode (z.B. 19A) * @param ticketId Ticket-ID */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //reservieren var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //finden Sie den Grundtarif für den Sitzplatz im Flugzeug var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //finden Sie die Kundendaten Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Gefundener Benutzer " + userData.getFio() + " Dokumentnummer " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //50% Rabatt price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //20% Rabatt price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //Rechnung ausstellen paymentClient.sendInvoice(invoice); System.out.println("Rechnung ausgestellt"); } @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; }
Welche Schritte wirst du unternehmen, um die Ursachen der regelmäßigen Neustarts des Dienstes im Zusammenhang mit dem OutOfMemoryError-Fehler zu bestimmen?
Haben Sie Erfahrung im Umgang mit Daten- oder Ressourcenanbietern?
Warum tritt eine ConcurrentModificationException auf, wenn ein ArrayList während der Iteration gleichzeitig modifiziert wird?
Können Sie erklären, was unter einem atomaren Datentyp verstanden wird?
Funktionsmechanismus des Operators SELECT FOR UPDATE in Datenbanken und seine Rolle bei der Verwaltung des gleichzeitigen Zugriffs
Wird der verknüpfte Datensatz in der Kindtabelle automatisch gelöscht, wenn der verknüpfte Schlüssel in der Elterntabelle gelöscht wird?
Welche Maßnahmen ergreifen Sie, wenn bei steigender Systembelastung die Verzögerungen bei Datenbankabfragen erheblich werden?
Auf welche Weise kannst du die Ausführungsgeschwindigkeit dieser Methode erhöhen?
Welche Methoden können verwendet werden, um die Suchgeschwindigkeit in einer Tabelle zu erhöhen?
Kannst du die wichtigsten Methoden der Stream API in Java auflisten?
Was unterscheidet einen optimistischen Ansatz bei Sperren von einem pessimistischen im Kontext der Verwaltung von Konkurrenz in Datenbanken?
Können Sie erklären, wie die Vererbungsstruktur von Ausnahmen in der Programmiersprache aufgebaut ist?
Erklären Sie das Konzept der Typerasure und seinen Hauptzweck in der Programmierung.