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

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

Bean的生命周期

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

创建

初始化赋值

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

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

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

相关推荐
白兰地空瓶14 小时前
告别 add(1, 2)!通过 JS 柯里化,让你的代码更加优雅
javascript·面试
CryptoRzz14 小时前
StockTV API 对接全攻略(股票、期货、IPO)
java·javascript·git·web3·区块链·github
iReachers14 小时前
为什么HTML打包安卓APP安装时会覆盖或者报错?
android·java·html·html打包apk·网页打包
纟 冬14 小时前
Flutter & OpenHarmony 运动App运动模式选择组件开发
android·java·flutter
毕设源码-赖学姐15 小时前
【开题答辩全过程】以 基于Springboot的智慧养老系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
jamesge201015 小时前
限流之漏桶算法
java·开发语言·算法
jvstar15 小时前
JAVA面试题和答案
java
冷雨夜中漫步15 小时前
OpenAPITools使用——FAQ
android·java·缓存
9坐会得自创15 小时前
使用marked将markdown渲染成HTML的基本操作
java·前端·html