循环依赖
如何解决:三层缓存(1.完整Bean 2.半成品Bean 3.Bean工厂)

为什么需要三级缓存,二级缓存不行:
三级缓存(存储用于创建代理对象的 ObjectFactory):如果需要AOP返回代理对象,不需要返回原始对象--动态创建对象
二级缓存(存储半成品对象,已经不能AOP了)
为什么说动态判断是否需要代理呢:因为有一部分类没有被AOP
如何解决:三层缓存(1.完整Bean 2.半成品Bean 3.Bean工厂)

为什么需要三级缓存,二级缓存不行:
三级缓存(存储用于创建代理对象的 ObjectFactory):如果需要AOP返回代理对象,不需要返回原始对象--动态创建对象
二级缓存(存储半成品对象,已经不能AOP了)
为什么说动态判断是否需要代理呢:因为有一部分类没有被AOP