我刚刚开始学习Spring框架,并且对Spring如何将一个bean自动连接到另一个没有setter方法的bean的私有变量感到好奇。例如,我有一个DependentBean,它依赖于DependedBean ...
@Component
public class DependentBean {
@Autowired
private DependedBean dependedBean; //this class has no "setDependedBean" setter method..
}
对于DependedBean ...
@Component
public class DependedBean{
...
}
当Spring Boot应用程序启动时,即使DependentBean对象没有用于设置其DependedBean属性的设置方法,它也可以设置DependentBean的dependedBean。春天是怎么做到的?我只是好奇...
最佳答案
在Java中,您可以使用反射来访问Class的私有字段。有关如何完成操作的更多详细信息,请参见this Stack Overflow question。