Avalados por :
No contexto do Spring Boot e injeção de dependências, há um debate em torno das melhores práticas para injetar dependências: Injeção de Campos, Injeção de Setters e Injeção de Construtores.
Neste artigo, focaremos nos perigos da injeção de campos e argumentaremos a favor de nos afastarmos dela.
A injeção de campos envolve anotar diretamente os campos privados de uma classe com
@Autowired
. Aqui está um exemplo:
@Component
public class OrderService {
@Autowired
private OrderRepository orderRepository;
public Order findOrderById(Long id) {
return orderRepository.findById(id);
}
}
A injeção de campos complica os testes unitários de seus componentes. Como as dependências são injetadas diretamente nos campos, você não pode facilmente fornecer mocks ou implementações alternativas fora do contexto do Spring.
Vamos ver o mesmo exemplo de
OrderService
.
Se você deseja realizar testes unitários no
OrderService
, enfrentará dificuldades para simular
contacto@primeinstitute.com
(+51) 1641 9379
(+57) 1489 6964
© 2024 Copyright. Todos los derechos reservados.
Desarrollado por Prime Institute