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

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

Bean的生命周期

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

创建

初始化赋值

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

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

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

相关推荐
AC赳赳老秦4 分钟前
2026多模态技术趋势预测:DeepSeek处理图文音视频多格式数据实战指南
java·人工智能·python·安全·架构·prometheus·deepseek
芒克芒克6 分钟前
深入浅出Java线程池(二)
java
Zik----11 分钟前
Leetcode22 —— 括号生成
java·开发语言
芒克芒克11 分钟前
深入浅出Java线程池(三)
java·开发语言
何中应16 分钟前
解决Jenkins界面操作非常慢的问题
java·运维·jenkins
追随者永远是胜利者19 分钟前
(LeetCode-Hot100)200. 岛屿数量
java·算法·leetcode·职场和发展·go
A懿轩A22 分钟前
【Java 基础编程】Java 常用类速查:包装类、String/StringBuilder、Math、日期类一篇搞定
java·开发语言·python·java常用类
盖头盖1 小时前
【Java反序列化之tabby半自动化挖掘新URLDNS链】
java
黄昏晓x1 小时前
C++----异常
android·java·c++
yaoxin5211231 小时前
330. Java Stream API - 处理 Optional 对象:像流一样优雅地使用 Optional
java·windows·python