Spring笔记02-bean的生命周期

Spring Bean 生命周期涵盖从创建到销毁的过程,主要步骤如下:

  1. 实例化:Spring 容器依据配置创建 Bean 实例,一般通过反射调用构造函数。
  2. 属性注入:按配置为 Bean 的属性赋值,可通过 XML 标签或注解实现。
  3. Aware 接口回调 :若实现BeanNameAwareBeanFactoryAwareApplicationContextAware接口,Spring 会依次调用对应方法,让 Bean 获取自身名称、容器引用和应用上下文。
  4. BeanPostProcessor 处理 :初始化前后,Spring 分别调用BeanPostProcessorpostProcessBeforeInitializationpostProcessAfterInitialization方法,可用于额外处理。
  5. 初始化 :实现InitializingBean接口,Spring 会调用afterPropertiesSet方法;也可指定自定义初始化方法。
  6. 使用 Bean:初始化完成后,Bean 可被应用程序使用。
  7. 销毁 :容器关闭时,若实现DisposableBean接口,Spring 调用destroy方法;也可指定自定义销毁方法。

演示:

单例对象的生命周期:

init初始化时间:容器建立,对象初始化

存活时间:只要容器在,对象就在

销毁时间:容器销毁,对象销毁

多例对象的生命周期:

初始化时间:跟随容器建立,每次通过容器获取时会建立一次

存活时间:对象只要在使用时都认为是存活的

销毁时间:对象长时间不适用,且没有被引用的情况下,由java的垃圾回收机制自动处理。

相关推荐
ZZHow102411 分钟前
PyTorch深度学习入门笔记(小土堆)P7-14
人工智能·pytorch·笔记·python·深度学习
Zane199420 分钟前
ThreadLocal 与 BlockingQueue:线程本地变量的内存泄漏原理,以及阻塞队列怎么选?
java·后端
用户31268748772020 分钟前
Spring Bean 生命周期到底经历了什么?从实例化到销毁的全链路拆解
java·spring boot
九硕智慧建筑一体化厂家24 分钟前
直流照明|档案库房专用照明,防紫外线、防纸张老化、适配24小时值守
运维·网络·笔记·智慧城市
Flittly25 分钟前
【我的手搓轮子日记】(2)handmade-ioc 手搓 IOC 容器
java·spring boot·spring
阿昌喜欢吃黄桃26 分钟前
Dubbo服务重启时注册中心下线不及时问题排查与修复记录
java·rpc·dubbo·问题排查
程序员钟霖35 分钟前
【实战版】Spring IOC 控制反转详解
java·后端·spring·maven·intellij-idea
prog_610338 分钟前
【笔记】用cursor手搓cursor(八)
笔记·llm·大语言模型·agent
confiself42 分钟前
树形思考研究进展
java·大数据·微服务
还是鼠鼠1 小时前
【Spring AI智能体实战 01】Java开发者接入大模型:国内平台、Token与API Key入门
java·大模型·spring ai·deepseek·阿里云百炼