O que exatamente é injeção de campo e como evitá-la?
Eu li em alguns posts sobreSpring MVC
ePortlets
essa injeção de campo não é recomendada. Porque eu estou tentando conseguir um Então eu me perguntei se estou usandoinjeção de campo e eu não posso responder. Como eu entendoinjeção de campo é se você injetar umBean
em um atributo com@Autowired
como isso:
CartController.java:
...
@Autowired
private Cart cart;
...
BookshopConfiguartion.java:
@Configuration
public class BookShopConfiguration {
@Bean
public Cart cart(){
return new Cart();
}
//more configuration
MinhasCart.java
é usado para armazenar e fornecer informações sobre os livros no carrinho.
Durante minha pesquisa, li sobreinjeção de construtor:
MyComponent.java:
...
public class MyComponent{
private Cart cart;
@Autowired
public MyComponent(Cart cart){
this.cart = cart;
}
...
Quais são as vantagens e as desvantagens de ambos os tipos de injeção?
EDIT 1: Como esta pergunta está marcada como duplicada deessa questão eu verifiquei. Porque não há exemplos de código nem na pergunta nem nas respostas que não está claro para mim se estou correto com meu palpite sobre o tipo de injeção que estou usando.