解释Spring 框架中bean的生命周期。
Spring容器从XML文件中读取bean的定义,并实例化bean。Spring 根据bean的定义填充所有的属性。
如果bean 实现了BeanNameAware接口,Spring 传递bean的ID到setBeanName方法。
如果Bean实现了BeanFactoryAware接口,Spring 传递beanfactory给setBeanFactory方法。
如果有任何与bean相关联的BeanPostProcessors Spring会在postProcesserBeforelnitialization()方法内调用它们。
如果bean实现IntializingBean了,调用它的afterPropertySet方法,如果bean声明了初始化方法,调用此初始化方法。
如果有BeanPostProcessors和bean关联,这些bean的postProcessAfterlnitialization()方法将被调用。
如果bean实现了DisposableBean,它将调用destroy()方法。