gpt4 book ai didi

java - Spring Framework 4.3.0 - 我什么时候需要@Autowired?

转载 作者:搜寻专家 更新时间:2023-11-01 01:20:39 25 4
gpt4 key购买 nike

我刚开始学习 Spring 框架(我使用 4.3.0 版),我认为我们需要 @Autowired 来告诉框架何时需要注入(inject)类。

但是,我今天尝试这样做:

@Component
public class CDPlayer implements MediaPlayer{

private CompactDisc cd;

//there are no @Autowired here
public CDPlayer(CompactDisc cd) {
this.cd = cd;
}

public void play() {
cd.play();
}

}

它与自动布线配置完美配合:

@Configuration
@ComponentScan
public class CDPlayerConfigAuto {

}

那么什么时候我真的需要使用@Autowired?

最佳答案

从 Spring 4.3 开始,如果您的类只有一个构造函数,则不需要这样做。

So as of 4.3, you no longer need to specify an explicit injection annotation in such a single-constructor scenario. This is particularly elegant for classes which otherwise do not carry any container annotations at all.

可以看这里:(单构造器场景的隐式构造器注入(inject))

https://spring.io/blog/2016/03/04/core-container-refinements-in-spring-framework-4-3

关于java - Spring Framework 4.3.0 - 我什么时候需要@Autowired?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37930595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com