Sobes.tech

Java

Nesne yönelimli programlamada polimorfizm ve soyutlama kavramları arasındaki farkı açıklayabilir misiniz?

Junior — Middle
212

Kodu okuyun ve hataları vurgulayın /** * Satın alınmış bir bileti olan müşteri, ek ücret karşılığında belirli bir koltuk seçebilir. * Koltukların temel fiyatı, tarifeler (harici servis) tarafından belirlenir. * Belirli tarifelere (PREMIUM, ULTRA) sahip müşteriler için ödeme sırasında indirim yapılması gerekir. * Rezervasyon sırasında, ödeme için bir fatura düzenlenir. Ödeme yönetimi üçüncü taraf bir serviste gerçekleştirilir. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Rezervasyon. * @param seatCode koltuk kodu (örneğin 19A) * @param ticketId bilet kimliği */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //rezervasyon yapıyoruz var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //uçaktaki seçilen koltuk için temel tarifeyi buluyoruz var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //müşteri verilerini buluyoruz Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Bulunan kullanıcı " + userData.getFio() + " belge numarası " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //%50 indirim price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //%20 indirim price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //faturayı gönder paymentClient.sendInvoice(invoice); System.out.println("Fatura gönderildi"); } @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; }

Senior
ТБанк
212

@Transactional anotasyonunda ayarlanabilecek farklı Propagation türleri hakkında konuşabilir misin?

Junior — Middle
212

Teknoloji alanında eğitim materyalleri ve güncellemeleri ararken hangi kaynakları kullanıyorsunuz?

Junior — Middle
212

MongoDB veritabanındaki farklı koleksiyonlar arasında bağlantılar kurmak mümkün mü?

Junior — Middle
212

Java ile çalışma ve bu dildeki ilk projelerinizi nasıl öğrenmeye başladınız?

Junior — Middle
212

Veritabanı sorguları nasıl oluşturulur?

Junior
212

Spring çerçevesi neye dayanır?

Junior
212

SQL ve NoSQL veritabanları arasındaki fark nedir?

Junior
212

@Bean anotasyonu nerede kullanılır?

Middle
212

Programlamada kalıtım ve ilişkilendirmeyi nerede kullanmak en iyisidir?

Middle
212

Bir metodun idempotansı nedir?

Junior
212

Projenizde Spring Security'de hangi kimlik doğrulama ve yetkilendirme yaklaşımı uygulanıyor?

Junior — Middle
Консалтика
212

HTTP istek yöntemleri arasındaki fark nedir?

Junior
212

Java'da AutoCloseable arayüzü nedir ve try-with-resources yapısı nasıl çalışır?

Middle
212

Veritabanları neden metin dosyalarından daha iyidir?

Junior
212

Programlamada kapsülleme nedir?

Intern
212

ORM'de JOIN FETCH kullanılırken hangi veri yükleme mekanizması kullanılır?

Junior — Middle
СБЕРСБЕР
212

Birden fazla iş parçacığının aynı ortak kaynakla eşzamanlı çalışması sırasında sorunların ortaya çıkmasını önleyen yaklaşımlar ve yöntemler nelerdir?

Junior — Middle
212

Lambda ifadeleri neye dayanır?

Middle
212
/726