这个问题在这里已经有了答案:
What exactly is Field Injection and how to avoid it?
(4 个回答)
去年关闭。
谁能告诉我为什么@autowired 说不推荐字段注入(inject),并且 TextWriter 对象“text”也说它不能 Autowiring ,因为有不止一个 textwriter 类型的 bean。 My code.
最佳答案
can anyone tell me why @autowired is saying field injection is not recommended ?
出于设计原因。将 bean 直接注入(inject)字段会使您的依赖项“隐藏”并鼓励不良设计:
通常,如果字段很少,则应该使用构造函数注入(inject)(从 Spring 4 开始不需要用
@Autowired
注释构造函数),否则应该使用 setter。两种方式都没有上面提到的所有缺点。
关于java - @Autowired 说不推荐现场注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62845494/