nealmind's Blog

Spring循环依赖

2020-04-24
neal

spring循环依赖

setter依赖

通过三级缓存解决

  • singletonObjects 缓存创建完成的bean
  • earlySingletonObjects 缓存正在创建中的bean
  • singletonFactories 缓存通过工厂创建的bean

构造器依赖

  • 重新设计依赖关系,避免构造器循环依赖
  • 通过使用@Lazy注解进行懒加载
  • 使用@PostConstruct注解,在构造函数被调用后添加依赖关系,缓存到

三级缓存中,从而解决循环依赖

  • 实现InitializingBean 接口,在afterPropertiesSet方法中从容器中获取bean并添加依赖关系

***************************************************************

基于个人学习总结,如有错误,请留言告知,谢谢.


Similar Posts


上一篇 Ioc和DI概念

Content