Junior — Middle
Como é que se podem implementar dependências através do container de Inversão de Controle (IoC)?
sobes.tech IA
Resposta da IA
A injeção de dependências através do contêiner Inversion of Control (IoC) em Java é geralmente implementada com frameworks como o Spring. As principais formas de injeção:
- Através do construtor — as dependências são passadas para a classe através de parâmetros do construtor.
- Através de setters (métodos set) — as dependências são configuradas através de métodos especiais após a criação do objeto.
- Através de campos (injeção de campo) — as dependências são injetadas diretamente nos campos da classe usando anotações.
Exemplo usando Spring e anotações:
@Component
public class Service {
private final Repository repository;
@Autowired
public Service(Repository repository) {
this.repository = repository;
}
}
Aqui, o contêiner IoC criará um objeto Repository e o passará ao construtor de Service. Essa abordagem facilita os testes e a gestão de dependências.