Spring的bean的生命周期

想象一下,Spring中的Bean就像是你家后院种植的一株植物,从播种到开花结果,再到最后枯萎,整个过程就像是Bean的生命周期。现在,让我们以这个比喻来了解一下Spring Bean的生命周期吧:

  1. 播种(实例化):首先,Spring准备种下一颗种子,也就是创建Bean的实例。这一步就像是Spring读取你的配置文件或注解,知道要创建一个什么样的Bean。

  2. 浇水施肥(属性填充):种子发芽后,需要浇水和施肥来帮助它成长。在Spring中,这就相当于给Bean注入它所需要的依赖。如果Bean需要其他Bean的服务,Spring会自动找到并连接它们,这就是依赖注入。

  3. 修剪枝叶(初始化):为了让植物长得更好,我们还需要修剪枝叶。在Bean的世界里,这就意味着执行一些初始化的方法,比如实现了InitializingBean接口的afterPropertiesSet方法,或者你自定义的初始化方法。这一步可以让Bean准备好提供服务。

  4. 享受花开(使用阶段):植物长大开花后,就可以欣赏它的美丽了。同样,Bean初始化完成后,就可以在你的应用程序中调用它,执行业务逻辑,发挥它的功能了。

  5. 收获果实或落叶归根(销毁):当季节变换,植物可能会结出果实或最终枯萎。在Spring应用关闭或Bean不再需要时,Spring会调用Bean的销毁方法,比如实现了DisposableBean接口的destroy方法,或者你定义的销毁回调方法。这标志着Bean的生命周期结束,资源被清理,好比植物完成了它的使命,回归自然。

总的来说,Spring Bean的生命周期就是从无到有,再到完成使命的整个过程,Spring框架自动管理这一切,让开发者可以专注于编写业务逻辑,而不用操心对象的创建、维护和销毁等细节。

相关推荐
用户40966601317513 小时前
Lombok 你用对了吗?@Data 之外的 6 个隐藏神器
java·后端·代码规范
梅头脑3 小时前
交易跨10个库、日均千万订单——选错一次分布式事务方案,加班三个月重写
java·分布式
瞬间&永恒~3 小时前
【MySQL】 主从复制多拓扑搭建实验
运维·数据库·mysql·云原生
久久学姐3 小时前
基础转码学 AI:Java+Python 双语言入门,3 个月可落地实战项目
java·python·ai·转码·实战项目
花生了什么事o3 小时前
synchronized 与 ReentrantLock:Java 锁机制原理与实现对比
java·开发语言
han_hanker3 小时前
sql语法 DECODE, CASE ... WHEN
数据库·sql·oracle
井川廊咏3 小时前
vi 删除指定范围的行,不用再反复按 dd
数据库·mysql
长不胖的路人甲4 小时前
Serial 串行、Parallel 并行、CMS 并发收集器
java·开发语言·jvm
z落落4 小时前
StudentInfo表 分页、增删改 存储过程+C# WinForm 存储过程实现分页和增删改查
数据库·sql·mysql
影寂ldy4 小时前
WinForm 数据库【新增+编辑】完整功能(参数化查询+配置文件+防报错全套)
数据库