我想将Spring BeanFactory
注入由同一BeanFactory
创建的Bean
有什么方法可以这样做吗?
RequestContext
来获取BeanFactory但是我想要注入BeanFactory
的bean不在requestContext
中但仍在应用程序上下文中。我能这样做吗?
答案 0 :(得分:14)
如果启用了注释配置模式,那么这应该可以正常工作
class Bean
@Autowired
BeanFactory factory;
...
答案 1 :(得分:8)
您的bean可以实现BeanFactoryAware
。通过实现此接口,您的bean将通过调用此方法来接收BeanFactory
:
void setBeanFactory(BeanFactory beanFactory) throws BeansException
顺便说一句,有一个类似的界面(ApplicationContextAware
),以便在需要时检索ApplicationContext
。