面试八股——Spring框架——Bean

Bean是单例的,且不是线程安全的。例子如下:下述的类变量是可修改的,当多用户访问时会造成成员变量的不一致。

Bean的生命周期

Bean对象的创建(构造+初始化赋值)

创建

初始化赋值

Bean的循环引用(又叫循环依赖)

循环依赖过程:
解决办法------三级缓存

第一级缓存存储已经完全创建好的单例Bean,第二级缓存存储还没有完全创建好的Bean对象,如只进行了构造但没有进行赋值。三级缓存创建的是ObjectFactory,即对象工厂,用于创建某个对象的。

相关推荐
ym hyd 1117 小时前
试题库管理系统源码 Java+SpringBoot+Vue3 前后分离
java·vue.js·spring boot·毕设
唠点键盘之外的7 小时前
15 微调 vs RAG:到底怎么选
人工智能·机器学习·面试·aigc
AC赳赳老秦7 小时前
采集行为合规自检:OpenClaw 自动校验 robots 协议与采集频率,规避违规采集风险
java·开发语言·c++·python·php·deepseek·openclaw
钱栈up7 小时前
mvn compile 卡死在 javac 阶段:一次类型不匹配的排查与修复
java·开发语言
怕浪猫8 小时前
Prompt Engineering 面试怎么考?这 5 个范式你必须会
面试·程序员·github
吠品9 小时前
CSS图片模糊过渡:一个transition加filter就够
java·数据库·notepad++
步行cgn9 小时前
Spring 全注解开发详解
java·后端·spring
长河10 小时前
Java的GC(垃圾回收)中,标记无用对象的核心方法是可达性分析算法
java·jvm·算法
code2cat10 小时前
Java进阶篇之LongAdder:把统计更新分散,再读取总和
java·并发编程·原子类·longadder
凯哥Java10 小时前
写代码怎么避免逻辑漏洞?
java·开发语言·人工智能·自动化