![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring学习内容整合
文章平均质量分 86
常见的一些问题场景, Spring的拓展内容等等, 以实际应用的角度出发记录一些问题及自己的理解
晚风微雨_问海棠
这个作者很懒,什么都没留下…
展开
-
依赖注入(DI)与控制反转(IOC)
BeanFactory: Spring中的最底层接口, IOC的核心, 依据此接口用来管理所有Bean的实例化, 初始化, 依赖关系配置与销毁等生命周期过程, 是最基本的接口, 通过该接口加载Bean采用的是延迟加载的方式,意味着只有在使用一些Bean时才会尝试加载Bean, 所以此种方式比较难发现一些配置问题。整个过程我们可以通过IOC容器来管理, 由IOC容器来控制所有对象的 实例化, 初始化, 依赖关系的配置, 以及销毁等过程, 这一系列的过程称之生命周期, 被管理的对象我们称之为Bean,原创 2023-07-03 17:51:20 · 68 阅读 · 1 评论 -
Spring为什么要使用三级缓存?
2)循环依赖的对象最好都是setter注入, 至少通过包名+类型按照字母序的第一个类不能是构造器注入,原因是如果是构造器注入, 构造函数会在实例化阶段通过反射被调用, 而将创建中的Bean放入三级缓存是在实例化阶段完成时才进行的,所以此时无法解决循环依赖了.这里面导致的问题就是B中的A对象, 与容器中的A对象并不是同一个, 一个是实例化的原对象, 一个是AOP后的代理对象, 这显然是有问题的.如果产生循环依赖的对象, 都是原本对象, 不需要生成代理对象, 即不需要进行AOP, 则使用二级缓存, 完全可以.原创 2023-05-10 16:32:59 · 251 阅读 · 3 评论