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

24.有哪些生命周期回调方法?有哪几种实现方式?

有哪些生命周期回调方法?有哪几种实现方式?

有两个重要的bean 生命周期方法,

  • 第一个是init , 它是在容器加载bean的时候被调用。
  • 第二个方法是 destroy 它是在容器卸载类的时候被调用。

bean 标签有两个重要的属性(init-method和destroy-method)。用它们你可以自己定制初始化和注销方法。它们也
有相应的注解(@PostConstruct和@PreDestroy)。

额外扩展

Spring生命周期全过程大致分为五个阶段:创建前准备阶段、创建实例阶段、依赖注入阶段、容器缓存阶段和销毁实例阶段。

1、创建前准备阶段
这个阶段主要是在开始Bean加载之前,从Spring上下文和相关配置中解析并查找Bean有关的配置内容,

比如init-method-容器在初始化bean时调用的方法、destory-method,容器在销毁Bean时调用的方法。

以及,BeanFactoryPostProcessor这类的bean加载过程中的前置和后置处理。

这些类或者配置其实是Spring提供给开发者,用来实现Bean加载过程中的扩展机制,在很多和Spring集成的中间件经常使用,比如Dubbo。

2、创建实例阶段
这个阶段主要是通过反射来创建Bean的实例对象,并且扫描和解析Bean声明的一些属性。

3、依赖注入阶段
在这个阶段,会检测被实例化的Bean是否存在其他依赖,如果存在其他依赖

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

相关文章:

  • C++详解
  • mybatis数据输入-实体类型的参数
  • Java-接口
  • mysql常用命令行代码
  • Python压缩、解压文件
  • 面试就是这么简单,offer拿到手软(一)—— 常见非技术问题回答思路
  • 134. 加油站(贪心算法)
  • Springboot3+vue3从0到1开发实战项目(二)
  • Spring中Bean的生命周期
  • IndexOutOfBoundsException: Index: 2048, Size: 2048] Controller接收对象集合长度超过2048错误
  • 2023年中国消费金融行业研究报告
  • 深度学习:什么是知识蒸馏(Knowledge Distillation)
  • 【Go】protobuf介绍及安装
  • c语言编程题经典100例——(41~45例)
  • 计算机毕业设计|基于SpringBoot+MyBatis框架健身房管理系统的设计与实现
  • java学习part27线程死锁
  • (二)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • 区间预测 | Matlab实现BP-KDE的BP神经网络结合核密度估计多变量时序区间预测
  • LD_PRELOAD劫持、ngixn临时文件、无需临时文件rce
  • 循环神经网络训练情感分析
  • 如何绕过某讯手游保护系统并从内存中获取Unity3D引擎的Dll文件
  • 【C/C++笔试练习】公有派生、构造函数内不执行多态、抽象类和纯虚函数、多态中的缺省值、虚函数的描述、纯虚函数的声明、查找输入整数二进制中1的个数、手套
  • Linux shell中的函数定义、传参和调用
  • YoloV8改进策略:基于RevCol,可逆的柱状神经网络的完美迁移,YoloV8的上分利器
  • 九章量子计算机:引领量子计算的新篇章
  • 什么是vue的计算属性
  • Linux中文件的打包压缩、解压,下载到本地——zip,tar指令等
  • C语言——深入理解指针(4)
  • Linux基础命令(超全面,建议收藏!)
  • LeetCode刷题---合并两个有序链表