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

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

Bean的生命周期

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

创建

初始化赋值

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

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

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

相关推荐
UrbanJazzerati6 分钟前
掌握SOQL For Loops:高效处理大量Salesforce数据的艺术
后端·面试
人道领域24 分钟前
【零基础学java】(方法引用)
java·开发语言
路漫聊架构38 分钟前
Redis扫描大key利器Scan命令探秘
java·数据库·redis
qq_3363139340 分钟前
java基础-IO流(打印流)
java·开发语言
我命由我123451 小时前
Android Jetpack Compose - enableEdgeToEdge 函数、MaterialTheme 函数、remember 函数
android·java·java-ee·kotlin·android studio·android jetpack·android-studio
tkevinjd1 小时前
JavaIO流1
java
J_liaty1 小时前
从入门到实战:Java Socket 实现 TCP/UDP 双协议网络通信系统(带心跳检测)
java·tcp/ip·udp
计算机学姐1 小时前
基于SpringBoot的美妆销售系统【个性化推荐算法+数据可视化统计+库存预警+物流信息】
java·vue.js·spring boot·后端·mysql·信息可视化·mybatis
橙熟1 小时前
一次 Druid 慢查询超时问题的源码排查
java
无限大61 小时前
为什么"计算机网络"需要分层设计?——从物理层到应用层
后端·面试·程序员