Spring 循环依赖问题
2021-04-03 11:17:08 10 举报
Spring循环依赖的讲解,有错误提出来我马上更正,共勉
作者其他创作
大纲/内容
删除三级缓存存入二级缓存返回对象
也就是从三个缓存中获取第一次进来肯定是都是不存在的,就走getBean逻辑
STEP1:getSingleton()尝试从缓存中拿实例
从三级缓存中获取STEP3中存入的对象
STEP4:bean创建完成,将当前的bean放入一级缓存,返回对象
缓存是否有数据
从三级缓存中拿数据,会需要走beanPostProcessor的修饰,比如若是当前对象存在切面,则需要先创建一个代理对象
经过一系列的bean实例化步骤···
STEP3:这里将当前上面的bean对象放入三级缓存中
这里介绍的流程简化了bean实例化的步骤,主要讲解循环依赖所接触到的方法,并且默认当前配置是允许提前暴露的,也即是支持循环依赖
从SpringBean实例化步骤开始
返回对象
缓存中都不存在
哪一个缓存
STEP2:createInstance()方法的调用,会调用构造方法,并在内存中生成一个空的对象,也就是还没有属性注入
二级缓存
三级缓存
收藏
0 条评论
回复 删除
下一页