Bean的生命周期
- 实例化Bean之前做前置处理(BeanFactoryPostProcess)
- 实例化Bean(构造器)
- 填充Bean的属性,可能产生循环依赖
- 调用postProcessBeforeInitialization
- 执行bean的初始化方法
- 调用postProcessAfterInitialization
- Bean的销毁方法
方法的执行顺序
构建顺序:
- bean的构造方法
- 属性赋值
- postProcessBeforeInitialization方法
- @PostConstruct注解修饰的方法
- afterPropertiesSet方法
- Init-method方法
- postProcessAfterInitialization方法
销毁顺序:
- @preDestroy
- DisposableBean接口(destroy())
- destroy-method