## org.springframework.beans.factory
Interface BeanFactoryAware

All Known Implementing Classes:
  AbstractAdvisorAutoProxyCreator, AbstractApplicationEventMulticaster, AbstractAutoProxyCreator, AbstractBeanFactoryBasedTargetSource, AbstractBeanFactoryBasedTargetSourceCreator, AbstractBeanFactoryPointcutAdvisor, AbstractEntityManagerFactoryBean, AbstractFactoryBean, AbstractJaxWsServiceExporter, AbstractPoolingTargetSource, AbstractPrototypeBasedTargetSource, AbstractServiceLoaderBasedFactoryBean, AnnotationAwareAspectJAutoProxyCreator, AnnotationMBeanExporter, AnnotationMethodHandlerAdapter, AnnotationMethodHandlerAdapter, AspectJAwareAdvisorAutoProxyCreator, AspectJExpressionPointcut, AutowiredAnnotationBeanPostProcessor, BeanConfigurerSupport, BeanFactoryDataSourceLookup, BeanFactoryDestinationResolver, BeanFactoryTransactionAttributeSourceAdvisor, BeanNameAutoProxyCreator, BeanReferenceFactoryBean, CommonAnnotationBeanPostProcessor, CommonsPoolTargetSource, DefaultAdvisorAutoProxyCreator, DefaultBeanFactoryPointcutAdvisor, DefaultLifecycleProcessor, GroovyScriptFactory, HibernateAccessor, HibernateInterceptor, HibernateTemplate, HibernateTransactionManager, InfrastructureAdvisorAutoProxyCreator, LazyInitTargetSource, LazyInitTargetSourceCreator, ListFactoryBean, LoadTimeWeaverAwareProcessor, LocalContainerEntityManagerFactoryBean, LocalEntityManagerFactoryBean, MapFactoryBean, MBeanExporter, MethodInvokingFactoryBean, MethodInvokingJobDetailFactoryBean, MethodLocatingFactoryBean, ObjectFactoryCreatingFactoryBean, OpenSessionInViewInterceptor, PersistenceAnnotationBeanPostProcessor, PersistenceExceptionTranslationInterceptor, PersistenceExceptionTranslationPostProcessor, PreferencesPlaceholderConfigurer, PropertyPathFactoryBean, PropertyPlaceholderConfigurer, PrototypeTargetSource, ProviderCreatingFactoryBean, ProxyFactoryBean, QualifierAnnotationAutowireCandidateResolver, QuickTargetSourceCreator, RequiredAnnotationBeanPostProcessor, SchedulerAccessorBean, ScopedProxyFactoryBean, ScriptFactoryPostProcessor, ServiceFactoryBean, ServiceListFactoryBean, ServiceLoaderFactoryBean, ServiceLocatorFactoryBean, ServletContextPropertyPlaceholderConfigurer, SetFactoryBean, SimpleApplicationEventMulticaster, SimpleBeanFactoryAwareAspectInstanceFactory, SimpleBeanTargetSource, SimpleHttpServerJaxWsServiceExporter, SimpleJaxWsServiceExporter, SortedResourcesFactoryBean, ThreadLocalTargetSource, TransactionAspectSupport, TransactionInterceptor, TransactionProxyFactoryBean

    public interface BeanFactoryAware

Interface to be implemented by beans that wish to be aware of their owning `BeanFactory`.

For example, beans can look up collaborating beans via the factory (Dependency Lookup). Note that most beans will choose to receive references to collaborating beans via corresponding bean properties or constructor arguments (Dependency Injection).

For a list of all bean lifecycle methods, see the `BeanFactory javadocs`.

Since:
  11.03.2003
Author:
  Rod Johnson
See Also:
  `BeanNameAware`, `BeanClassLoaderAware`, `InitializingBean`, `ApplicationContextAware`

Method Summary
`void` `setBeanFactory(BeanFactory beanFactory)` Callback that supplies the owning factory to a bean instance.

Method Detail

### setBeanFactory

    void setBeanFactory(BeanFactory beanFactory)
                        throws BeansException

  Callback that supplies the owning factory to a bean instance.

  Invoked after the population of normal bean properties but before an initialization callback such as `InitializingBean.afterPropertiesSet()` or a custom init-method.

  Parameters:
    `beanFactory` - owning BeanFactory (never `null`). The bean can immediately call methods on the factory.
  Throws:
    `BeansException` - in case of initialization errors
  See Also:
    `BeanInitializationException`