Sobes.tech

Java

Fale sobre o ciclo de vida do Maven.

Middle
212

Que restaurantes ou cafés recomenda visitar?

Junior — Middle
Передовые Платежные Решения
212

Que ferramentas e bibliotecas de testes automatizados você utilizou nos seus projetos?

Junior — Middle
AstonAston
212

O que acontece dentro do ArrayList ao inserir um elemento na sua parte central?

Junior — Middle
212

Como se diferenciam a ligação estática e dinâmica de métodos em Java e quais são as suas características?

Junior — Middle
212

Pode explicar a diferença entre o conceito de polimorfismo e abstração na programação orientada a objetos?

Junior — Middle
212

Leia o código e destaque os erros /** * Um cliente com um bilhete comprado pode, por uma taxa adicional, escolher um lugar específico. * O preço base dos lugares é determinado por tarifas (serviço externo). * Para clientes com tarifas específicas (PREMIUM, ULTRA), deve ser concedido um desconto no pagamento. * Ao reservar, é emitida uma fatura para pagamento. A gestão do pagamento é feita em um serviço 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 do lugar (por exemplo 19A) * @param ticketId ID do bilhete */ @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); //procuramos a tarifa base para o lugar no avião var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //procuramos dados do cliente Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Encontrado utilizador " + userData.getFio() + " número do documento " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //desconto de 50% price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //desconto de 20% price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //emite a fatura paymentClient.sendInvoice(invoice); System.out.println("Fatura 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

Qual é a principal diferença entre as interfaces Comparable e Comparator em Java ao ordenar objetos?

Junior — Middle
212

Que fontes utilizas para procurar materiais de estudo e atualizações na área de tecnologia?

Junior — Middle
212

É possível estabelecer ligações entre diferentes coleções na base de dados MongoDB?

Junior — Middle
212

Como é que as consultas à base de dados são formadas?

Junior
212

Com que valores as variáveis são inicializadas por padrão em Java?

Junior
212

Qual é a ordem de chamada dos construtores e blocos de inicialização considerando a hierarquia das classes?

Middle
212

Pode explicar como é que um ataque do tipo SQL Injection é realizado e como ele explora vulnerabilidades na base de dados?

Junior — Middle
УралсибУралсиб
212

Qual é a diferença entre bases de dados SQL e NoSQL?

Junior
212

Onde é usada a anotação @Bean?

Middle
212

Onde é melhor aplicar herança e associação na programação?

Middle
212

O que é a idempotência de um método?

Junior
212

Qual abordagem de autenticação e autorização é implementada no Spring Security no seu projeto?

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

Qual é a diferença entre os métodos de pedidos HTTP?

Junior
212
/726