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的垃圾回收机制自动处理。

相关推荐
Fireworkitte1 小时前
Apache POI 详解 - Java 操作 Excel/Word/PPT
java·apache·excel
weixin-a153003083161 小时前
【playwright篇】教程(十七)[html元素知识]
java·前端·html
DCTANT1 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
sealaugh321 小时前
aws(学习笔记第四十八课) appsync-graphql-dynamodb
笔记·学习·aws
Touper.2 小时前
SpringBoot -- 自动配置原理
java·spring boot·后端
黄雪超2 小时前
JVM——函数式语法糖:如何使用Function、Stream来编写函数式程序?
java·开发语言·jvm
ThetaarSofVenice2 小时前
对象的finalization机制Test
java·开发语言·jvm
一只叫煤球的猫3 小时前
手撕@Transactional!别再问事务为什么失效了!Spring-tx源码全面解析!
后端·spring·面试
望获linux3 小时前
【实时Linux实战系列】CPU 隔离与屏蔽技术
java·linux·运维·服务器·操作系统·开源软件·嵌入式软件
JosieBook3 小时前
【Java编程动手学】使用IDEA创建第一个HelloJava程序
java·开发语言·intellij-idea