Sobes.tech

Java

Cuéntame, ¿de qué manera te involucraste en los detalles de este proyecto?

Junior — Middle
212

¿Qué datos de origen se utilizan para determinar el valor de hashCode en un objeto?

Junior — Middle
212

¿Cuál es el papel del sistema de control de versiones en el proceso de desarrollo de software?

Junior — Middle
212

¿Cómo se puede implementar el almacenamiento y la visualización de la estructura de un árbol genealógico en una base de datos relacional?

Middle — Middle+
Hftlabs
212

¿Puede explicar la diferencia entre el concepto de polimorfismo y abstracción en la programación orientada a objetos?

Junior — Middle
212

Lea el código y destaque los errores /** * Un cliente con un billete comprado puede, por un costo adicional, elegir un asiento específico. * El precio base de los asientos se determina mediante tarifas (servicio externo). * Para clientes con tarifas específicas (PREMIUM, ULTRA), se debe aplicar un descuento en el pago. * Al reservar, se emite una factura para el pago. La gestión del pago se realiza en un servicio externo. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Reserva. * @param seatCode código del asiento (por ejemplo, 19A) * @param ticketId ID del billete */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //reservamos var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //buscamos la tarifa base para el asiento en el avión var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //buscamos datos del cliente Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Usuario encontrado " + userData.getFio() + " número de documento " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //descuento del 50% price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //descuento del 20% price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //emitimos la factura paymentClient.sendInvoice(invoice); System.out.println("Factura emitida"); } @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

¿Puedes hablar sobre los diferentes tipos de propagación que se pueden establecer en la anotación @Transactional?

Junior — Middle
212

¿Qué fuentes utilizas para buscar materiales de estudio y actualizaciones en el campo de la tecnología?

Junior — Middle
212

¿Es posible establecer conexiones entre diferentes colecciones en la base de datos MongoDB?

Junior — Middle
212

¿Cómo comenzaste a aprender a trabajar con Java y tus primeros proyectos en este lenguaje?

Junior — Middle
212

¿Con qué se forman las consultas a la base de datos?

Junior
212

¿En qué se basa el framework Spring?

Junior
212

¿En qué consiste la diferencia entre bases de datos SQL y NoSQL?

Junior
212

¿Dónde se usa la anotación @Bean?

Middle
212

¿Dónde es mejor aplicar la herencia y la asociación en programación?

Middle
212

¿Qué es la idempotencia de un método?

Junior
212

¿Qué enfoque de autenticación y autorización se implementa en Spring Security en su proyecto?

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

¿Cuál es la diferencia entre los métodos de solicitudes HTTP?

Junior
212

¿Qué es la interfaz AutoCloseable y cómo funciona la construcción try-with-resources en Java?

Middle
212

¿Por qué las bases de datos son mejores que los archivos de texto?

Junior
212
/726