浅谈SpringBoot如何自定义Starters
一、starters原理
1.1 starters场景启动器
1、场景需要用到的依赖是什么?
比如依赖的jar
2、如何编写自动配置?
以webmvcautoconfiguration自动配置为例:
@configuration指定这是一个配置类
@conditionalonxxx 在指定条件成立的情况下自动配置类生效
自动装配顺序
在特定自动装配class之前 @autoconfigurebefore
在特定自动装配class之后@autoconfigureafter
指定顺序@autoconfigureorder
@bean 给容器中添加组件
@configurationpropertie结合相关xxxproperties类来绑定相关的配置
@enableconfigurationproperties 让xxxproperties生效加入到容器中
配置自动装配bean:
自动配置类要能加载
将需要启动就加载的自动配置类,将标注@configuration的自动配置类配置在meta‐inf/spring.factories下,自动配置类就会生效
3、模式
启动器(starter)
启动器只用来做依赖导入
专门写一个自动配置模块
启动器依赖自动配置,别人只需要引入启动器(starters)
mybatis-spring-boot-starter 自定义启动器名 -spring-boot-starter
二、自定义starters
构建项目:
1.先创建一个空工程
2、创建两个模块分别是启动器starter的maven模块和spring的初始化器创建的自动配置模块
启动器maven模块
自定义的starters
spring的初始化器创建模块(创建自动配置相关的模块)
三、代码步骤
在启动器starter的pom文件中引入配置类的坐标ming-spring-boot-starter-autoconfigurer
写一个打招呼的功能
helloproperties 和helloservice 进行属性绑定的
自动配置类
然后将这两个模块安装到maven仓库中
先安装配置模块因为starter模块依赖配置模块,别人调用我们的starter模块就行了
然后将启动器starter也装到仓库中,别人就可以用坐标引入了
在别的项目中引入自定义的启动器starter
配置application.properties
测试
到此这篇关于浅谈springboot如何自定义starters的文章就介绍到这了,更多相关spring boot自定义starters内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!