我的代码可以正常工作,但是我无法从哪里获得依赖注入。如Spring文档所述,关于默认依赖项注入一无所获。
package org.stackoverflow;
@Component
public class A {
private final B b;
public A(B b) {
this.b = b;
}
}
package org.segfault;
@Configuration
Public class Config {
@Bean
public B b(){ return new B(); }
}
与上述代码相同,组件扫描在com.stackoverflow和导入的org.segfault类配置路径上运行。但是正如您所看到的,类A中没有构造函数注入。
我怀疑它必须记录在某处。但我无法找出答案。无论如何,它正在工作:)
有人可以提供文档帮助吗?或者我缺少什么?
答案 0 :(得分:2)
Spring文档的第17. Spring Beans and Dependency Injection章说:
如果bean具有一个构造函数,则可以省略
@Autowired
答案 1 :(得分:1)
从Spring 4.3.*
开始,就不再需要在构造函数上方指定@Autowire
注释,只要有单,非私有该类的构造函数。
6.1核心容器的改进(news)
如果目标bean仅定义一个构造函数,则不再需要指定@Autowired
注释。