什么是循环依赖

循环依赖是指两个或者多个bean之间相互引用,形成了一个闭环。

最典型的场景就是:

比如Spring正在创建Bean A,发现它依赖B,于是就去创建B,结果在创建B的时候,又发现它依赖A。

但是这个时候A正在创建中,还没有完全生成,这样B就拿不到A的引用,所以该咋办呢?

这里又分为构造器注入Setter注入两种情况:

如果是构造器注入,那好办,Spring直接就给你抛出BeanCurrentlyInCreationException错误。

如果是Setter注入,Spring则是通过三级缓存机制来解决。

相关推荐
云烟成雨TD14 小时前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
于慨14 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
swg32132114 小时前
Spring Boot 3.X Oauth2 认证服务与资源服务
java·spring boot·后端
gelald14 小时前
SpringBoot - 自动配置原理
java·spring boot·后端
殷紫川14 小时前
深入理解 AQS:从架构到实现,解锁 Java 并发编程的核心密钥
java
呆瑜nuage14 小时前
MySQL表约束详解:8大核心约束实战指南
数据库·mysql
一轮弯弯的明月14 小时前
贝尔数求集合划分方案总数
java·笔记·蓝桥杯·学习心得
chenjingming66614 小时前
jmeter线程组设置以及串行和并行设置
java·开发语言·jmeter
殷紫川14 小时前
深入拆解 Java volatile:从内存屏障到无锁编程的实战指南
java
eddieHoo15 小时前
查看 Tomcat 的堆内存参数
java·tomcat