Bean取得BeanFactory、ApplicationContextAware的目的是什麼,一般的目的就是要取得一些資源的存取、或是使用那些被注入的實例所提供的機制,例如ApplicationContextAware提供了publishEvent()方法,可以支持基於Observer模式的事件傳播機制。
加載Spring配置文件時,如果Spring配置文件中所定義的某個Bean類實現了ApplicationContextAware 接口,那麼在加載Spring配置文件時,會自動調用ApplicationContextAware 接口中的
public void setApplicationContext(ApplicationContext context) throws BeansException
方法,使該bean的實例獲得ApplicationContext對象。
進而可以使用ApplicationContext,例如getBean()等。