一、什么是spring中 bean(对象)相互依赖(循环依赖)
spring中若干个bean属性互相注入对方,最终形成闭环。
二、spring怎么解决 单例 Bean循环依赖?
答:使用 三级缓存解决
三级缓存是利用3个map集合
第一个集合:singletonFactories(三级缓存) : Bean早期引用的工厂集合。
第二个集合:earlySingletonObjects(二级缓存) :Bean早期(属性没填充完)引用集合,存放不完整对象
第三个集合:singletonObjects(一级缓存) : 最终完整Bean容器,存放完整对象
流程:首先从一级缓存中找,没找到则从二级缓存中找,没有则三级缓存工厂创建
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。