如何理解有关@Autowired

时间:2017-06-15 23:34:24

标签: java spring autowired spring-annotations

希望这个问题很简单。我正在阅读Spring Framework Reference:beans-java部分,我看到了这个用法示例 enter image description here

令我困惑的部分是最后的注释,特别是它所说的

  

另请注意,如果目标不需要指定@Autowired   bean只定义了一个构造函数;在上面的例子中,@ Autowired是   在RepositoryConfig构造函数上没有必要。

我不太明白为什么我可以从@Autowired删除RepositoryConfig()?在这种情况下,目标bean是什么以及它们指的是什么构造函数?

我尝试重现这一点,但文档没有提供AccountRepository课程或TransferService课程,而且我是一个菜鸟,所以不确定他们应该看什么。因此,需要一个可重复的例子。

1 个答案:

答案 0 :(得分:1)

4.3之前的Spring版本要求您注释要与@Autowired一起使用的构造函数。即使你的类有一个构造函数。

从Spring 4.3开始,当你的类有一个构造函数时,你可以省略构造函数上的@Autowired作为Spring然后自动假设你想要使用那个构造函数。

有关详细信息,请参阅this blog,以及here Jira票证。