1. [BeanFactoryPostProcessor] 实例化
2. [BeanFactoryPostProcessor] 调用 postProcessBeanFactory()方法
3. [BeanPostProcessor] 构造方法执行
4. [InstantiationAwareBeanPostProcessor] 构造方法执行
5. [InstantiationAwareBeanPostProcessor] 调用 postProcessBeforeInstantiation()执行
6. ### 执行[MyTestBean] [构造方法] ###
7. [MyInstantiationAwareBeanPostProcessor] 调用 postProcessAfterInstantiation()执行
8. [MyInstantiationAwareBeanPostProcessor] 调用 postProcessPropertyValues()执行
9. ### 执行[MyTestBean] key属性[setter方法] ###
### 执行[MyTestBean] value属性[setter方法] ###
10. [BeanNameAware] 执行 setBeanName(myTestBean)方法
11. [BeanFactoryAware] 执行 setBeanFactory(org.springframework.beans.factory.support.DefaultListableBeanFactory@57fffcd7: defining beans
12. [BeanPostProcessor] postProcessBeforeInitialization()执行, 对属性进行更改
13. [InitializingBean] 执行 afterPropertiesSet()方法
14. ### 执行[MyTestBean] init-method属性指定的 MyInitMethod() ###
15. [BeanPostProcessor] postProcessAfterInitialization()执行, 对属性进行更改
容器初始化成功
16. ### 执行[MyTestBean] [toString()方法] ###
MyTestBean[key='key', value='4201']
关闭容器
17. [DisposableBean] 执行 destroy()方法
18. ### 执行[MyTestBean] destroy-method属性指定的 MyDestroyMethod() ###
本文详细解析了Spring框架中Bean的创建过程与生命周期,包括BeanFactoryPostProcessor和BeanPostProcessor的执行顺序,InstantiationAwareBeanPostProcessor的作用,以及Bean的属性注入、初始化、销毁等关键步骤。
1508

被折叠的 条评论
为什么被折叠?



