JavaEE Bean生命周期

一个Bean从创建到销毁,如果是用BeanFactory来生成,管理Bean的话,会经历几个执行阶段,也就是说它的生命周期是怎样的。首先我们来看一张图:

JavaEE Bean生命周期_第1张图片

在spring bean生命周期执行的过程如下:

1)spring对bean进行实例化,默认bean是单例

2)spring对bean进行依赖注入

3)如果bean实现了BeanNameAware接口,spring将bean的id传给setBeanName()方法

4)如果bean实现了BeanFactoryAware接口,spring将调用setBeanFactory方法,将BeanFactory实例传进来

5)如果bean实现了ApplicationContextAware()接口,spring将调用setApplicationContext()方法将设置应用上下文对象的引用

6) 如果bean实现了BeanPostProcessor接口,spring将调用它的postProcessBeforeInitialization接口方法

7) 如果bean实现了InitializingBean接口,spring将调用它们的afterPropertiesSet接口方法

8)如果bean使用了init-method属性声明了初始化方法,该方法会被调用

9)如果bean实现了BeanPostProcessor接口,spring将调用它们的postProcessAfterInitialization接口方法

10)此时bean已经准备就绪,可以被应用程序使用了,他们将一直驻留在应用上下文中,直到该应用上下文被销毁

11)若bean实现了DisposableBean接口,spring将调用它的distroy()接口方法

12)如果bean使用了destroy-method属性声明了销毁方法,则该方法被调用

你可能感兴趣的:(JavaEE Bean生命周期)