Spring bean的生命周期

①通过构造器或者工厂方法创建bean实例

②调用setter方法为bean的属性设置值

③将bean实例传递给Bean后置处理器的beanPostProcessBeforeInitialization方法

④调用bean的init-method方法

⑤将bean的实例传递给Bean的后置处理器的beanPostProcessAfterInitialization方法

⑥此时bean是可以使用的状态

⑦关闭容器时,调用bean的destory-method方法

注:

Bean 的初始化和销毁方法:可以通过 bean 节点的 init-method 和
destroy-method 来配置 Bean 的初始化方法和销毁方法

bean的后置处理器需要实现BeanPostProcessor接口


/**
* bean:IOC 容器中 bean 的实例
* beanNames:IOC 容器中该 bean 的名字
*/

public interface BeanPostProcessor {

    Object postProcessBeforeInitialization(Object bean, String beanNames) throws BeansException;

    Object postProcessAfterInitialization(Object bean, String beanNames) throws BeansException;
}

Bean 后置处理器需要在 IOC 容器中进行配置,但不需要指定 id 属性,Spring IOC 容器会自动的识别这是个 Bean 后置处理器,自动的使用它。

posted @ 2019-03-19 15:36  浅安时光i  阅读(167)  评论(0编辑  收藏  举报