我一直在互联网上阅读涉及Spring的文章和教程,我看到很多人都有代码示例,他们声明他们的@Autowired成员的范围 默认 而不是私人。
E.g。
@Autowired
AccountRepository accountRepository;
而不是
@Autowired
private AccountRepository accountRepository;
我想知道为什么会这样。因为从良好的封装角度来看,我认为这是错误的。在Spring中这样做有什么好处我不知道吗?
答案 0 :(得分:1)
直接通过字段注入依赖项绝不是一个好习惯,而是使用构造函数注入(@JBNizet也指出),您可以查看here以获取更多详细信息。
简而言之,您应该在bean构造函数上使用@Autowired
,这通常是public
。