当前位置: 首页 > news >正文

Spring框架中的Bean的生命周期

Spring Bean 的生命周期总体分为四个阶段:实例化 =》属性注入=》初始化=》销毁

实例化:

(1)实例化bean:根据配置文件中Bean的定义,利用java Reflection 反射技术创建Bean的实例!

属性注入:

(2)注入对象依赖的属性值或者对象

(3)处理各种Aware接口:Spring会检测该Bean是否实现了Aware接口,通过这个类型的接口,可以让Spring框架为当前Bean注入相应的内容。

初始化:

(4)执行BeanPostProcessor前置处理:如果想对Bean进行一些自定义的前置处理,那么可以让Bean实现了BeanPostProcess接口,将会在该阶段调用postProcessBeforeInitialization(Object obj, String s)方法。

(5)执行InitializingBean初始化方法:如果Bean实现了initializingBean接口,执行afeterPropertiesSet()方法。

(6)执行init-method自定义初始化方法:如果Bean在Spring配置文件中配置了init-method属性,则会自动调用其配置的初始化方法。

(7)执行BeanPostProcessor后置处理:如果这个Bean实现了BeanPostProcess接口,将会调用postProcessAfterInitialization(Object obj,String s)方法,由于这个方法是在Bean初始化结束后调用;

销毁:

(8)执行DisposableBean销毁Bean:当Bean不再需要时,会经过清理阶段,如果Bean实现了DisposableBean这个接口,会调用其实现的destroy()方法执行销毁;

(9)执行destroy-method自定义销毁方法:如果这个Bean的Spring配置中配置了destroy-method属性,会自动调用其配置的自定义销毁方法。

http://www.lryc.cn/news/113912.html

相关文章:

  • vue3-ts-vite:vue 项目 配置 多页面应用
  • docker部署jenkins且jenkins中使用docker去部署项目
  • 无锚框原理 TOOD:Task-aligned One-stage Object Detection
  • 配置Picgo图床之COS、OSS、Github图床
  • 【LangChain】Prompts之自定义提示模板
  • EFLFK——ELK日志分析系统+kafka+filebeat架构(3)
  • 支付总架构解析
  • 【HCIP】OSPF综合实验
  • PyTorch深度学习实战(10)——过拟合及其解决方法
  • 【工作记录】week7
  • 安防监控视频融合EasyCVR平台接入RTSP流后设备显示离线是什么原因?
  • MongoDB:Linux环境全套安装指南
  • PostgreSql 启停
  • 中介者模式(C++)
  • LeetCode热题 100整理
  • SDE与ODE
  • AWK实战案例——筛选给定时间范围内的日志
  • 摄影入门基础笔记
  • 如何在业务中体现TCC事务模型?
  • TouchGFX字库外置的另一种处理方式
  • jvm的垃圾回收算法有哪些
  • untiy 连接两个UI或一段固定一段跟随鼠标移动的线段
  • 如何成为顶级开源项目的贡献者
  • Threads and QObjects
  • Tcp是怎样进行可靠准确的传输数据包的?
  • [SWPUCTF 2022 新生赛]numgame
  • java异常机制分析
  • 浅谈Python中的内存管理 程序的内存布局
  • (具体解决方案)训练GAN深度学习的时候出现生成器loss一直上升但判别器loss趋于0
  • Redis 安装以及配置隧道连接