开发者社区 问答 正文

关于BeanFactoryAware接口

当类实现BeanFactoryAware接口,就有了BeanFactory的引用,这个引用是什么时候加载的?是启动容器的时候么? 还是,spring检测到有类实现BeanFactoryAware接口的时候,现加载的?加载流程是什么?翻源码了没看到,谁能解释一下,谢谢。在好能给个例子 ^ ^

展开
收起
a123456678 2016-03-17 16:32:20 2428 分享 版权
1 条回答
写回答
取消 提交回答
  • 首先继承这个接口是为了得到BeanFactory的引用,进而得到想要的Bean。但是这样做是违反DI注入原则的,所以Spring是不建议这样做的。所以你会发现,想继承这个接口必须在applicationContext.xml里实例Bean。而且我怀疑,这个BeanFactroyAware只是一个标识接口(自己理解的叫法),和BeanNameAware接口一样,只是在实例化的时候,判断是否继承这些接口了,进而通过反射固定的方法,然后给对应的调用方法。

    2019-07-17 19:05:38
    赞同 展开评论
问答分类:
问答地址: