- 三级缓存分别保存什么对象
1.成品对象
2.半成品对象
3.lambda表达式 - 如果只使用一级缓存行不行
不行。成品对象与半成品对象会放到一起,在进行对象获取的时候有可能获取到半成品对象。 - 如果只有二级缓存行不行
getSingleton
doCreateBean
只有二级缓也可以解决依赖问题。但是添加了AOP之后就无法实现。
整个容器中对象是单例的,不能有同名对象的代理对象和非代理对象。要保证容器中只有一个对象供外部调用,所以三级缓存完成了代理对象替换非代理对象的工作,遵从单例模式。如果没有AOP,二级缓存就可以。但是spring框架无法判断。所以走整体流程
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)