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

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

Bean的生命周期

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

创建

初始化赋值

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

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

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

相关推荐
微学AI1 天前
Rust语言的深度剖析:内存安全与高性能的技术实现操作
java·安全·rust
程序猿小蒜1 天前
基于springboot的共享汽车管理系统开发与设计
java·开发语言·spring boot·后端·spring·汽车
lsp程序员0101 天前
使用 Web Workers 提升前端性能:让 JavaScript 不再阻塞 UI
java·前端·javascript·ui
q***46521 天前
在2023idea中如何创建SpringBoot
java·spring boot·后端
hygge9991 天前
Spring Boot + MyBatis 整合与 MyBatis 原理全解析
java·开发语言·经验分享·spring boot·后端·mybatis
q***25211 天前
Spring Boot接收参数的19种方式
java·spring boot·后端
WX-bisheyuange1 天前
基于Spring Boot的民谣网站的设计与实现
java·spring boot·后端
q***14641 天前
Spring Boot文件上传
java·spring boot·后端
WX-bisheyuange1 天前
基于Spring Boot的民宿预定系统的设计与实现
java·spring boot·后端·毕业设计
q***71011 天前
开源模型应用落地-工具使用篇-Spring AI-Function Call(八)
人工智能·spring·开源