2013-08-28 20 views
5

BeanFactoryBeanFactoryBeanFactory tarafından üretilen bir Bean'e bir Spring enjekte etmek mi istiyorsunuz? Bu arada, bir web uygulaması geliştiriyorum. Eğer RequestContext alarak BeanFactory alabilirim ama BeanFactory enjekte etmek istediğim fasulye requestContext içinde değil ama yine de uygulama bağlamında olduğunu biliyorum. bunu yapabilir miyim?Bean Beaning'in bir Bean içine enjekte edilmesi

cevap

6

Fasulyeiniz BeanFactoryAware'u uygulayabilir. Bu arayüzü uygulayarak, Fasulye bu yöntemi çağrısı ile BeanFactory alacaktır: Bu arada

void setBeanFactory(BeanFactory beanFactory) throws BeansException 

, eğer gerekiyorsa ApplicationContext almak amacıyla benzer bir arayüzü (ApplicationContextAware) bulunmaktadır.

11

açıklama-config modu sonra etkinse bu çalışması gerekir

class Bean 
    @Autowired 
    BeanFactory factory; 
    ... 
İlgili konular