了解@autowired注释

时间:2017-10-12 11:34:57

标签: java spring

如果我用@Component注释标记了bean。但是两个bean在不同的文件夹中。一个在com.mycompany.core.bean1中,另一个在com.mycompany.DAO.bean2中。 当我试图在bean 2中自动装配bean1时:

  public class Bean2{

  @Autowired
  Bean1 bean1;
  .....
  }

我是否需要在bean2中导入包含bean1的包,还是自己扫描它?

UPD:我知道同名的问题。但问题完全不同。所以,如果您现在不解决我的问题,请不要发布链接到另一个问题。

2 个答案:

答案 0 :(得分:0)

在java类Bean2中,您必须组织导入,但应导入Bean1

此外,由于自动装配和组件扫描,您必须配置组件扫描。您可以使用Java或XML配置。您可以在此处查看一些示例:https://www.mkyong.com/spring/spring-auto-scanning-components/

你可以在这里找到官方的Spring参考: https://docs.spring.io/spring/docs/5.0.0.RELEASE/spring-framework-reference/core.html#spring-core

答案 1 :(得分:0)

据我了解你的问题,它与Spring或Autowiring没有任何关系。您在Bean1中引用了Java类Bean2,并且您说Bean1Bean2不在同一个包中。因此,您必须将Bean1导入Bean2,否则您的代码甚至无法编译。