扩展------SpringBoot的自动装配机制+自定义一个Starter

SpringBoot的自动装配机制

SpringBoot提供给我们只要将框架的依赖包引入pom文件中,就可以帮助我们自动配置好,我们开箱即用,非常方便,底层原理是如何的呢?

首先自动装配依赖于@EnableAutoConfiguration注解。

往下走,@SpringBootApplication由三个注解组成

最核心的就是@EnableAutoConfiguration注解,往下走又由两个注解组成

整体流程:

自定义Starter

 ①创建一个空项目

②空项目中添加模块

③将autoconfiguration的依赖放到starter的pom文件中

 

④在autoconfiguration中编写场景功能的自动配置

ThreadPoolService:就是我们的场景类

PoolParams:参数类

ThreadPoolAutoConfiguration:自动配置类!!核心

创建 src/main/resources/META-INF/spring.factories:SpringBoot启动的时候会扫描全部的该路径,然后自动装配starter所需的Bean

⑤打包

⑥全部打包后,本地仓库就有了自定义的Starter,在新项目中引入即可

如果@AutoWired注入不成功,可以用@Resource注入

另外我们在Starter中绑定了配置信息,在新项目的yml或者properties文件中可设置参数

启动新项目,查看最后的结果,成功实现!!!!

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

PCIe扫盲(九)

系列文章目录 PCIe扫盲(一) PCIe扫盲(二) PCIe扫盲(三) PCIe扫盲(四) PCIe扫盲(五) PCIe扫盲(六) PCIe扫盲(七&#xff09…

测试栏杆天线和金属圆管天线的差异

今天用网分测试了大约800mm的拉杆天线和800mm的金属圆管的s11的差异。 拉杆的最粗部分10mm,最细部分6mm。圆管的直径为均匀26mm。 两者的谐振频率在60Mhz左右。(这也说明了谐振频率只要由长度决定) 拉杆天线的swr 圆管的swr 注:上图因为网…

六个神级AI绘画技巧,让你的作品瞬间高级感爆棚!

大家好,我是Shelly,一个专注于输出AI工具和科技前沿内容的AI应用教练,体验过300款以上的AI应用工具。关注科技及大模型领域对社会的影响10年。关注我一起驾驭AI工具,拥抱AI时代的到来。 在艺术的世界里,AI绘画正成为一…

网络原理(4)——网络层(IP)、数据链路层

1. IP 协议 基本概念: 主机:配有 IP 地址,但是不进行路由控制的设备 路由器:即配有 IP 地址,又能进行路由控制 节点:主机和路由器的统称 IP 协议报头格式 1) 4 位版本:实际上只有两个取值&…

扣子智能体实战-快速生成公众号爆款标题的智能体

文章目录 一,创建一个智能体二,创建工作流1,开始结点增加一个theme变量2,新增一个大模型节点3,新增一个代码结点4,发布工作流5, 工作流概览 三,增加开场白 如果是做公众号&#xff0…

Linux线程基础

🌎 Linux线程 文章目录: Linux线程 线程概念       线程的理解 再谈地址空间 线程控制       线程等待       线程资源共享       线程退出       线程异常       线程分离       理解线程tid 线程切换 线程…

重修设计模式-设计原则

重修设计模式-设计原则 设计原则 设计原则是软件编码时所遵循的规则,旨在帮助开发者创建出既满足功能需求又易于维护、可扩展且美观的设计,理解设计原则可以提升代码质量、减少错误以及促进团队协作,但对设计原则的理解要灵活,不…

佩戴舒适且适合学生党的蓝牙耳机?分享开放式耳机排行榜前十名

对于追求佩戴舒适的学生党来说,高性价比的开放式耳机是一个不错的选择。因为这类耳机不仅提供了良好的通风性,还减少了长时间佩戴带来的闷热感。而且开放式耳机也通常具有轻巧的设计,能够减轻了耳朵的压力。而且,还需要考虑到学生…

CO82-工單號碼段配置

可以通過CO82查看工單號碼段。 配置工單號碼段: 1、首先配置一個號碼段。 2、將工單類型分配給號碼段。 此時工單類型ZP01號碼段即為41W000000-41W999999 3、可以點擊概覽按鈕,查看概覽。 可以看到不同號碼段下的所有工單類型。 *然後在前台就可以對Z…

怎么测开关电源效率?电源效率标准是多少?

在追求电子产品高性能与低功耗的今天,开关电源的效率成为了衡量其性能的一项重要指标。提高开关电源的效率,对于保障电子设备的稳定性和延长使用寿命具有重要意义。今天将为大家介绍开关电源效率的测试方法以及在不同负载条件下电源的效率标准。 一、开关…

「Netmarble 小镇」活动来了:踏上穿越标志性世界的旅程!

欢迎来到 Netmarble 小镇!本次活动从 9 月 13 日持续到 10 月 11 日,是你们体验 Netmarble 著名游戏世界最精彩内容的入口。在为期一个月的庆祝活动中,你们将体验到独家内容、惊险刺激的挑战和全新人物化身的发布! 探索 Netmarble…

高校宿舍电费管理怎么实现

1引言 在大学的象牙塔里,宿舍不仅是学子们休憩的港湾,更是青春记忆的重要载体。然而,随着科技的发展与生活习惯的改变,宿舍内的电器设备日益增多,电费管理成为了一个不可忽视的问题。本文将从高校宿舍电费管理的现状出…

【AI小项目6】QLoRA针对资源受限设备上的大模型微调和文本分类任务的推理

目录 一、项目简介概述时间主要工作和收获技术栈数据集结果参考 二、训练阶段的完整代码什么是 QLoRA 微调?注意 安装库导入包配置定义一个Config类配置训练参数配置Lora 初始化分词器和模型数据预处理计算模型评估指标交叉验证划分数据集举例: 创建Trai…

mycat双主高可用架构部署-ER表

MySQL5.7服务器IP是192.168.31.209及192.168.31.210 vi /usr/local/mycat/conf/schema.xml <?xml version"1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat"http://io.mycat/"><schema n…

Java通信协议—TCP协议上传文件(完整详解,附有案例+代码)

TCP协议上传文件 文章目录 TCP协议上传文件1.需求2.代码实现 1.需求 客户端&#xff1a;将本地文件上传到服务器。接收服务器的反馈。 服务器&#xff1a;接收客户端上传的文件&#xff0c;上传完毕之后给出反馈。 2.代码实现 public class Server {public static void main(…

fastson与jackson入门

一&#xff0c;简介 json: JavaScript Object Notation, JS对象简谱。 官网&#xff1a;JSON官网 二&#xff0c;使用场景 网络传输 ​ 描述同样的信息&#xff0c;json相比xml占用更少的空间, <?xml version"1.0" encoding"uTF-8"?> <pers…

电气自动化入门03:安全用电

视频链接&#xff1a;2.1 电工知识&#xff1a;触电原因与防触电措施_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1PJ41117PW/?p4&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 1.电流对人体的危害 电击&#xff1a;电流通过人体。 电伤&#xff1a;电流热效应…

魅族20机型 M2381“工程固件”作用分析以及写入步骤

在上期的博文中简单说明了工程固件的作用。对于资深玩家来说写入工程固件可以调试参数或者格机 误檫除全分区后的底层修复,但对于一般玩家来说不推荐写入。固件本身的作用是修复与调校。有些操作是不可逆。工程固件实际是用于机型开发到量产中帮助开发人员检查和修复软件中的问…

小米机型“工程固件” 小米13工程资源预览 写入以及nv损坏修复

目前各大品牌机型中。可以录数于小米机型的工程固件最全 最多。这个也由于小米机型的加密机制比较特殊 。每款新机型发布后不久。工程包就会出现。从小米5起始以及红米note4起始都有工程固件。另外在维修行业中。米系机型更换cpu都需要先写入对应的绑定包。然后才可以写入官方m…

Windows如何查看已缓存的DNS信息

Windows server 2016如何查看已缓存的DNS信息 在Windows server 2016系统下&#xff0c;如何查看已缓存的DNS信息呢? 1.打开“运行”&#xff0c;输入cmd&#xff0c;点击“确定” 2.在命令行界面输入ipconfig /displaydns&#xff0c;按回车即可查看已缓存的dns信息