SpringBoot-(三十二)自定义spring-boot-starter
本文最后更新于:February 27, 2023 pm
SpringBoot框架中有两个非常重要的策略:开箱即用和约定优于配置。其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。
目录
对于SpringBoot的自动装配机制,这里就不描述了,可自行搜索。总的来说,写一个自定义的starter还是比较简单的,只需要简单的几步。
步骤
- 创建一个SpringBoot项目。可以删除启动类。
- 项目构建完成后,在
resources
文件夹下面新建META-INF
文件夹,并新建spring.factories
文件。 - 增加服务提供类。
- 增加统一配置类。
- 添加配置类到文件。
示例
前两步就不演示了,直接从第三步开始。
服务提供类
即提供的服务是什么。
1 |
|
统一配置类
所有需要的服务都进行注入。
1 |
|
自动装配
将上面的UtilsConfig类进行配置。在spring.factories文件里添加:
1 |
|
打包
可自行上传至Maven仓库。这里就只是演示一下本地的。
执行:install后,就会在你的本地maven仓库出现一个jar包,之后其他的项目就可以从这个本地maven仓库里获取依赖。
📢注意:删除启动类后会报错如下
1Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:2.6.11:repackage (repackage) on project utils-demo: Execution repackage of goal org.springframework.boot:spring-boot-maven-plugin:2.6.11:repackage failed: Unable to find main class
将打包插件删除即可。
1
2
3
4
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
使用
然后在其他模块中进行引入:
1 |
|
然后就可以正常的进行使用了:
1 |
|
提示
- 一般官方的starter命名为:spring-boot-starter-xxxx;
- 自定义的命名一般为:xxxx-spring-boot-starter;
本文作者: 墨水记忆
本文链接: https://tothefor.com/DragonOne/81f48d89.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!