
什么是循环依赖:
概念:多个bean之间相互依赖,形成了一个闭环。比如:A依赖于B,B依赖于C,C依赖于A。
下图为spring官网对循环依赖的说明:


构造器循环依赖是无法解决的。
解决循环依赖:
解决A,B循环依赖的问题,只要A的注入方式是setter注入并且为Singleton,就不会有循环依赖的问题。
spring内部通过3级缓存来解决循环依赖的(DefaultSingletonBeanRegistry):



A,B两个对象在缓存中的迁移过程:

什么是循环依赖:
概念:多个bean之间相互依赖,形成了一个闭环。比如:A依赖于B,B依赖于C,C依赖于A。
下图为spring官网对循环依赖的说明:
构造器循环依赖是无法解决的。
解决循环依赖:
解决A,B循环依赖的问题,只要A的注入方式是setter注入并且为Singleton,就不会有循环依赖的问题。
spring内部通过3级缓存来解决循环依赖的(DefaultSingletonBeanRegistry):
本文标题:spring循环依赖:
本文链接:https://www.haomeiwen.com/subject/zlattltx.html
网友评论