spring中Bean的生命周期

spring中Bean的生命周期

1、 实例化bean:反射的方式生成对象

2、 填充bean的属性:populateBean(),进行依赖注入,这里可以扩展出循环依赖问题(三级缓存)

3、 调用aware接口相关的方法:invokeAwareMethod(完成BeanName、BeanFactory、BeanClassLoader对象的属性设置)

4、 调用BeanPostProcessor中的前置方法:使用的比较多的有(ApplicationContextPostProcessor,设置ApplicationContext,Enviroment,ResourceLoader等对象)

5、 调用initMethod方法:invokeInintMethod(),判断是否实现了initializingBean接口,如果有,调用afterPropertiesSet方法,没有就不调用

6、 调用BeanPostProcessor的后置处理方法:spring的aop就是在此处实现的,AbstractAutoProxyCreator

注册Destruction相关的回调接口:钩子函数

7、 获取到完整的对象:可以通过getBean的方式来进行对象的获取

8、 销毁流程 1.判断是否实现了DispoableBean接口,2.调用destoryMethod方法

Original: https://www.cnblogs.com/yclblogs/p/15827793.html
Author: 阿龙同学
Title: spring中Bean的生命周期

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/588937/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球