Spring应用上下文的获取和保存Bean

news/2025/10/14 23:58:26/文章来源:https://www.cnblogs.com/chucz/p/19142376

Spring应用上下文的获取和保存Bean

Spring 容器是 IOC 容器,但是,反过来却不成立

  • 不常用的容器实现 -- BeanFactory:最简单的容器,提供基本的 DI 功能
  • 高级实现,继承 BeanFactory 派生的应用上下文 -- ApplicationContext:解析配置文件,创建、装配、管理、销毁 Bean

获取 ApplicationContext 的四种方式

ApplicationContextInitializar:容器创建完成之后的回调

定义在 org.springframework.context 包下

1673170909586-1cb773bd-cd38-4be7-aa5f-c613f8adcaeb.png

1673170983053-98da658a-e9ce-4ccc-a75c-462267e6de6b.png

1673171019820-41420966-f524-4836-b583-852e9958ea9d.png

ApplicationListener:观察者模式的典型应用(常用)

1673171100511-15aa86d8-c02d-42fe-862d-558617601aa0.png

1673171191391-9142b279-9a58-4d38-8bc8-62ff68832031.png

Spring Boot 启动程序的返回

run 方法返回的就是应用上下文

1673171273589-5c7eb3bd-cb6e-4624-87d8-04e76cdb705c.png

ApplicationContextAware : Spring 的 Aware 接口(常用)

Aware 可以理解为“察觉、注意到的、感知的”,在 Spring 中,XxxAware 也就是对 Xxx 感知的意思

1673171349914-e7e4174c-9cbb-45e9-ab2d-4acfd60dea27.png

1673171374758-557ece6e-2fb7-40bb-860f-8e404a871267.png

编写工具类:保存上下文,获取Bean

1673171450194-daf71d5d-1bf9-432a-9d27-72a4a8e1f6f7.png

1673171492465-85fa9fe5-128e-41fa-aa7d-39fdb5a7f997.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/937174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis的数据类型选择

Redis的数据类型选择String 几乎所有的数据都可以使用 String 来存储。浪费存储空间,key 也是需要存储空间的 管理、维护成为噩梦,Redis 中存在着大量的 KV 对象 key 冲突的几率变高(不同的业务系统共用一个 Redis …

pipeline解决Redis频繁命令往返导致的性能瓶颈

pipeline解决Redis频繁命令往返导致的性能瓶颈客户端和服务端交互模型Redis 的 pipeline 交互模型Redis pipeline 与原生批量mset等等命令对比原生批量命令是原子性,pipeline 是非原子性的 原生批量命令一次只能执行一…

SpringBean实例化之前做点事情

SpringBean实例化之前做点事情SpringBean 实例化 需求,实现一个视频解码器,可以实现各种视频格式的解码 第一种方法:先去实现各个解码器,然后 if.else 判断使用哪种解码器使用 BeanPostProcessor 优化 第二种方法:…

SpringBoot定时任务不定时执行了

SpringBoot定时任务不定时执行了两个注解 @EnableScheduling:使得@Scheduled生效 @Scheduled:标注在方法上 @Scheduled 注解 fixedDelay任务结束与开始之间的间隔 fixedRate两次任务的开始的间隔,不管任务是不是执行…

依赖冲突的发现和解决

依赖冲突的发现和解决依赖冲突的发现现象一:一个类的行为不按照预期,本来这个类应该是有这个方法的,但是引入一个新的依赖之后就开始报错找不到方法了,一般就是依赖冲突的时候 Maven 自己选择了一个不符合自己预期…

javaLong类型在前端json数据损失精度

javaLong类型在前端json数据损失精度方法一:重新生成pojo对象,将所有数据库类型为bigint都映射成String类 方法二:对于使用springboot,则增加配置代码: package com.gj.app.config;import com.fasterxml.jackson.…

校招面试官揭秘:我们到底在寻找什么样的技术人才?

🎯 校招面试官揭秘:我们到底在寻找什么样的技术人才?又是一年校招季!📚 作为技术团队的Leader,这段时间我面试了不少优秀的同学。有人拿到心仪offer,也有人遗憾错过机会...今天想从面试官的角度,和大家聊聊我…

时间格式不能正常转换?

时间格式不能正常转换?@DateTimeFormat 注解 前台到后台的时间格式转换,对于GET 请求参数可以正常工作。对于 POST 请求会报反序列化错误POST 请求会使用 JSON 反序列化,不会使用 @DateTimeFormat 注解。POST 表单(…

群发红包系统

群发红包系统业务流程 发红包输入金额以及人数 创建红包订单(订单ID,金额,份数) 调用支付系统 红包订单支付之后红包就发出去了 钱先拆好(行锁分散,加大并发)抢红包抢红包业务群,检测当前是否有剩余钱 没有剩余…

day011

今日完成:mysql的初步认识以及cmd指令操作 明日完成:mysql 遇到问题:无

【黑马python】基础 5.Python 函数:参数 返回值 嵌套

笔记汇总目录【黑马python】8天python从入门到精通 - 汇总Python 函数代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例代码示例参考链接黑马-4.Python 循环语句 0…

linux 命令

tar 命令 1、创建归档文件:将文件 file1、file2 和 directory 打包到一个名为 archive.tar 的归档文件中。 tar -cvf archive.tar file1 file2 directory-c: 创建新的归档文件-v: 显示详细输出,列出被添加到归档中的…

一试模拟试题(十七)problem 7 另(数竞相关)

一试模拟试题(十七)problem 7 另: 求式子 \(T = \sqrt{\cfrac{5-3 \sin \theta}{5+3 \cos \theta}}\) 的最大值 易知可以转化为点 \(P(5,5)\) 到以原点 \(O\) 为圆心,半径为 \(3\) 的圆的切线的斜率(较大的那一个…

PaddleOCR源码安装+centos7.6+python3.10

先自行安装python3,版本如下:[root@localhost IOPaint]# python3 --version Python 3.10.6安装gcc9# 安装 SCL 仓库 sudo yum install -y centos-release-scl# 安装 devtoolset-9(包含 GCC 9) sudo yum install -y…

以后尽量多更新

此前曾经注册网易博客,新浪博客,现在都没了,希望这个博客可以生存时间长一点

10/14

学习了有关递归的知识

算法模版

\(算法模版\)\(Author:\) 缪语博本文档基于 \(GPL-3.0 License\) 本文档 \(GitHub\) 储存库:model \(目录\) \(Contents\)快读快写线段树中国剩余定理(拓展)最短路算法LCA最近公共祖先高精度树链剖分网络流KMP算法…

newDay10

1.今天事有点多,课后没学多少,主要是写了写作业,当然单词还是得背的。明天应该有空了 2.明天多花点时间学学 3.太粗心了,有点改不过来

C#/.NET/.NET Core技术前沿周刊 | 第 57 期(2025年10.1-10.12)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与…

Cheap Context and Expensive Context

Cheap Context and Expensive Context Repo Cheap Context SubAgent的Context是廉价的而且是一次性的 或者可以称之为 intern context 像实习生一样非常的廉价, 执行一次性任务, 而且受限于传入上下文的限制, 显得有些…