
17 - Injeção de dependências via atributo
Uma das práticas mais comuns no Spring é a injeção de dependências. Isso significa que o próprio Spring se encarrega de fornecer os objetos que uma classe precisa para funcionar, sem que seja necessário instanciá-los manualmente.
Para isso, utilizamos a anotação @Autowired
. Veja um exemplo baseado em nosso projeto:
@Autowired
private PessoaRepositorio pr;
Como funciona
Nesse exemplo, a dependência PessoaRepositorio
será automaticamente instanciada pelo Spring e atribuída ao atributo pr
.
- O Spring analisa todas as classes com
@Component
,@Service
,@Repository
, entre outras. - Quando encontra um campo anotado com
@Autowired
, ele procura o tipo correspondente e injeta o objeto pronto. - Esse processo é chamado de Inversão de Controle, pois quem controla a criação dos objetos é o próprio Spring.
Vantagens
- Redução de acoplamento entre classes.
- Facilidade de manutenção e testes.
- Padronização no desenvolvimento com Spring.
Dica: A injeção de dependência também pode ser feita via construtor ou método set, mas a forma mais rápida e direta é via atributo, como mostrado acima.
Clique aqui para se tornar membro do canal
Abaixo segue nossa aula no YouTube: