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

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.kler.cn/a/154395.html

相关文章:

  • STM32 Option Bytes(选项字节)
  • 论文《基于现实迷宫地形的电脑鼠设计》深度分析——智能车驱动算法
  • Vue中的导航守卫有哪三种?分别有什么作用
  • 电子电气架构 --- 传统刷写流程怎么用在SOC上就不适用呢?
  • docker部署bitnami/etcd:latest
  • 如何在uniapp中获取和修改Web项目的Cookie
  • mysql区分大小写吗
  • 亚马逊云科技推出新一代自研芯片
  • 程序员的亚健康
  • N-135基于springboot,vue高校图书馆管理系统
  • 如何使用 NFTScan NFT API 在 Starknet 网络上开发 Web3 应用
  • JIRA 基本使用
  • Web框架与Django路由层
  • 初始数据结构(加深对旋转的理解)
  • Python自动化——原生警告框和自定义弹窗的区别
  • 智能优化算法应用:基于共生生物算法无线传感器网络(WSN)覆盖优化 - 附代码
  • 【嵌入式-51单片机】常见位运算和数据类型以及sbit使用
  • 5个被忽视的Linux实用命令
  • 《第一行代码:Android》第三版4.2常用控件的使用方法(2)
  • 求整数序列中出现次数最多的数
  • 深入理解同源限制:网络安全的守护者(下)
  • Linux 磁盘分区处理
  • JPEG 协议中英文对照
  • 分布式ID生成框架Leaf升级踩坑
  • vue 前端实现login页登陆 验证码
  • Vue3-pnpm包管理器创建项目