一、前置问题
- Bean创建流程?
- 什么是循环依赖?
- 三级缓存可以解决哪些循环依赖场景?
- 二级缓存可以解决循环依赖吗?如果可以,为什么不使用?
- Bean创建的场景?二维:循环依赖和代理
二、循环依赖
Spring循环依赖相关的代码现在比较繁琐,如果阅读时不考虑版本的变迁,很难理解解决循环依赖的流程。
我把Spring依赖的解决方案认为是三个迭代版本的最终版,这样理解起来会更清晰。
版本 | 目的 |
---|---|
版本一 | 解决普通bean的创建,不涉及AOP和循环引用 |
版本二 | 版本一 + AOP支持 |
版本三 | 版本二 + 循环依赖支持 |
网友评论