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

相关推荐
tg:;7 分钟前
ADC笔记
笔记
fqq315 分钟前
算法入门----排序(选择,冒泡,插排)
java·数据结构·算法
lwewan34 分钟前
26考研——栈、队列和数组_栈(3)
数据结构·笔记·考研
小小鸭程序员40 分钟前
Spring Boot事务管理详解(附银行转账案例)
java·spring boot·spring·github·intellij-idea
kill bert1 小时前
第30周Java分布式入门 docker
java·分布式·docker
陌言不会python1 小时前
谷粒微服务高级篇学习笔记整理---异步&线程池
笔记·学习·微服务·线程池·异步
给我一个接口1 小时前
基于Huggingface的lerobot项目在so-arm100机械臂上的复现笔记
笔记
云之渺1 小时前
java115
java
林川的邹1 小时前
如何根据场景判断是使用ArrayList还是LinkedList?
java·后端
阿绵1 小时前
拦截器和过滤器详解
java·spring·过滤器·拦截器