涉及知识点:BeanPostProcessor-后置处理器/增强处理器
循环依赖
(即:死循环,两个对象创建时,里边儿的属性对象互相引用,A里边儿引用B,B里边儿引用A),
解决方法:
1)— 三级缓存
2)— 通过提前暴露对象的方式
三级缓存 用于判断是否需要AOP动态代理对象创建,替换对象
a --> b,
b --> c,
b <-- c,
a <-- b
源码调试:getBean开始--》doGetBean——》createBean——》doCreateBean———》createBeanInstance(实例化)——》populateBean(属性填充)