L'injection de champ, comme le montre l'exemple ci-dessous, se produit lorsqu'un bean est injecté avec @Autowired directement sur son champ :
@Component public class MyComponent { @Autowired private Cart cart; }
En revanche, l'injection de constructeur, comme dans l'exemple ci-dessous, implique l'injection de dépendances via le constructeur :
@Component public class MyComponent { private final Cart cart; @Autowired public MyComponent(Cart cart){ this.cart = cart; } }
Directives d'injection
En général, Spring recommande les pratiques d'injection suivantes :
Inconvénients de l'injection de champ
L'injection de champ présente plusieurs inconvénients :
Conclusion
En fonction des besoins, utilisez principalement l'injection de constructeur ou une combinaison d'injection de constructeur et de setter. L'injection sur le terrain présente des inconvénients qui l'emportent sur sa commodité, la rendant généralement déconseillée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!