IOC容器中Bean的生命周期方法
SpringIOC容器可以管理Bean的生命周期,Spring允许在bean声明周期的特定点执行定制的任务。
SpringIOC容器对bean的生命周期进行管理的过程:
- 通过构造器或工厂方法创建bean实例
- 为bean的属性设置值和对其他bean的引用
- 调用bean的初始化方法
- bean可以使用了
- 当容器关闭时,调用bean的销毁方法
**在Bean的声明里设置init-method
和destory-method
属性,为bean指定初始化和销毁的方法。
创建bean后置处理器
bean后置处理器允许在调用初始化方法前后对bean进行额外的处理。
bean后置处理器对IOC容器里的所有bean实例逐一处理,而非单一实例,其典型应用就是:检查bean属性的正确性或根据特定的标准更改bean的属性
对bean后置处理器而言,需要实现BeanPostProcessor
接口,在初始化方法被调用前后,Spring将每个bean实例分别传递给上述接口的以下两个方法:
public Object postProcessBeforeInitialization(Object bean, String beanName) ;
public Object postProcessAfterInitialization(Object bean, String beanName) ;
添加bean后置处理器后bean的生命周期
- 通过构造器或工厂方法创建bean实例
- 为bean的属性设置值和对其他bean的引用
- 将bean实例传递给bean后置处理器的
postProcessBeforeInitialization()
- 调用bean的初始化方法
- 将bean实例传递给bean后置处理器的
postProcessAfterInitialization()
- bean可以使用了
- 当容器关闭时,调用bean的销毁方法
网友评论