SpringBean实例化之前做点事情

news/2025/10/14 23:56:22/文章来源:https://www.cnblogs.com/chucz/p/19142377

SpringBean实例化之前做点事情

SpringBean 实例化

需求,实现一个视频解码器,可以实现各种视频格式的解码

第一种方法:先去实现各个解码器,然后 if.else 判断使用哪种解码器

1673174154848-0f2de361-e08b-4072-a40c-fd40b157cd79.png

1673174177392-133f52e3-16ee-4ec1-92d6-4f47584a89b1.png

1673174203385-ce8f3841-766a-43b0-8558-0d8ea47ade75.png

1673174223495-ad533477-2cae-4639-853a-4c231754610d.png

使用 BeanPostProcessor 优化

第二种方法:使用 BeanPostProcessor 构造解码器索引,再从索引中拿到匹配的

1673174274200-023da56b-1915-4ca0-9f44-625b0b42381f.png

1673174360460-07555967-5db0-4af3-8027-c8dffc6b8370.png

1673174482757-8c285350-87d4-40aa-b591-91d512894c04.png

1673174446116-7eedff99-17d1-4875-b1b6-1bcd88cb65eb.png

1673174603343-f354f035-dfa0-4b83-beb4-a0013e40caee.png

测试运行:

1673174645569-b05d1448-dd14-4f88-8754-c56e6e4d4023.png

BeanFactoryPostProcessor

  • BeanFactoryPostProcessor 是在 Spring 容器加载 Bean 定义XML 文件之后, Bean 实例化之前执行
  • BeanFactoryPostProcessor 的执行顺序在 BeanPostProcessor 之前
  • BeanFactoryPostProcessor 与 BeanPostProcessor 都是服务于 Bean 的生命周期中的,只是使用场景和作用略有不同

第三方类是单例的,但是想变为原型的,怎么操作?

1673174891801-36fe16b8-22a7-4060-900c-c31576b4eb29.png

1673174860578-61a117fa-3f96-4647-933c-fc81d36051e9.png

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

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

相关文章

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 像实习生一样非常的廉价, 执行一次性任务, 而且受限于传入上下文的限制, 显得有些…

[Mysql]快速执行sql文件

[Mysql]快速执行sql文件mysql版本:5.7.x打开cmd窗口,cd到mysql软件bin路径下,执行 mysql --user=修改数据库用户名 --password=修改数据库密码 --database=修改数据库名称 --batch --execute="source 修改文件名…

Agent之殇

Agent之殇速度, 效果, 成本 这三者不可能同时达成.速度增加任务并发度 使用更小的模型效果使用超量的上下文 使用紧凑高密度的上下文 使用超量的SubAgent 使用更好的模型成本少的上下文 少的模型调用次数 廉价的模型

元类编程

2025.10.14 1.在Python元类编程中,当定义类似 `class MyClass(metaclass=MyMeta):` 的类时,创建过程涉及元类的几个特殊方法。调用顺序为:首先调用 `MyMeta.__prepare__` 方法准备命名空间(一个字典用于存储类属性…