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

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

Bean的生命周期

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

创建

初始化赋值

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

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

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

相关推荐
智慧物业老杨9 小时前
物业数字化落地思考:真正的转型,是底层数据秩序的重构
java·大数据·人工智能·微服务·系统架构
星空11 小时前
金蝶苍穹build.gradle配置
java·build.gradle
考虑考虑12 小时前
Springboot环境变量占位符语法
spring boot·后端·spring
步行cgn14 小时前
Spring 基于 XML 的自动装配:byName 详解
java·后端·spring
不会c+14 小时前
Day02 - 需求分析与用例建模
spring
Alice-YUE14 小时前
工业级 AI Agent 架构:5 层、2 范式、4 原则,一次讲透
面试·系统架构·大模型·ai agent·智能体
大帅点兵15 小时前
Apache Ant 1.9.9 完整讲解
java
LuTshoes15 小时前
spring ai 实战 手搓 PlaneExecuteAgent
java·人工智能·spring·ai
这料鬼有毒15 小时前
二刷hot100-73.矩阵置零
java
caoerzhong15 小时前
JeeWMS 开源仓库管理系统二次开发与接口对接实战:Java WMS 如何与 ERP、MES 和自动化设备打通
java·开源