spring bean生命周期常用方法的执行顺序
一、常用的
(一)、创建
- 构造方法
- BeanPostProcessor.postProcessBeforeInitialization()
- @PostConstruct
- InitializingBean.afterPropertiesSet()
- init-method
- BeanPostProcessor.postProcessAfterInitialization()
(二)、销毁
- @PreDestroy
- DisposableBean.destroy()
- destroy-method
二、更详细的
(一)、创建
- 构造方法
- Setter方法
- BeanNameAware.setBeanName()
- BeanFactoryAware.setBeanFactory()
- ApplicationContextAware.setApplicationContext()
- 调用BeanPostProcessor的预先初始化方法,如下:
BeanPostProcessor1.postProcessBeforeInitialization
BeanPostProcessor2.postProcessBeforeInitialization
BeanPostProcessor3.postProcessBeforeInitialization
… - @PostConstruct
- InitializingBean.afterPropertiesSet()
- init-method
- 调用BeanPostProcessor的后初始化方法,如下:
BeanPostProcessor1.postProcessAfterInitialization
BeanPostProcessor2.postProcessAfterInitialization
BeanPostProcessor3.postProcessAfterInitialization
…