为什么要使用三级缓存,二级缓存不能解决吗?

提问者:帅平 问题分类:面试刷题
为什么要使用三级缓存,二级缓存不能解决吗?

 您阅读本篇文章共花了: 

1 个回答
Rae
Rae 管理员
可以,三级缓存的功能是只有真正发生循环依赖的时候,才去提前生成代理对象,否则只会「创建一个工厂并将其放入到三级缓存」中,但是不会去通过这个工厂去真正创建对象。
如果使用二级缓存解决循环依赖,意味着所有 Bean 在实例化后就要完成 AOP 代理,这样「违背了 Spring 设计的原则」,Spring 在设计之初就是在 Bean 生命周期的最后一步来完成 AOP 代理,而不是在实例化后就立马进行 AOP 代理。
发布于:2年前 (2022-10-20) IP属地:未知
我来回答