我的代码正在工作,但我无法弄清楚从哪里获得依赖注入。由于 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 中没有构造函数注入。
我怀疑它必须记录在某个地方。但我无法找到。无论如何,它正在工作:)
有人可以帮忙提供文档或我缺少什么吗?
The Spring 文档,第 17 章。春豆和依赖注入 说:
如果一个 Bean 有一个构造函数,则可以省略
@Autowired
自 Spring 4.3.*
以来,不再需要在构造函数上方指定@Autowire
注释,前提是该类有一个非私有构造函数。
6.1 核心容器改进(新闻(
如果目标 Bean 只定义了一个构造函数,则不再需要指定@Autowired
注释。