文章目录
一、前言
SpringBoot starter机制
SpringBoot由众多Starter组成,SpringBoot之所以流行,也是因为starter机制。starter是SpringBoot非常重要的一部分,可以理解为一个可拔插式插件,使用starter开发某个功能,开发者不需要关注各种依赖库的处理和具体的配置信息,Spring Boot自动通过classpath路径下的类发现需要的Bean,并置入相应的Bean。例如,你想使用Reids插件,那么可以使用spring-boot-starter-redis;如果想使用MongoDB,可以使用spring-boot-starter-data-mongodb。
为什么要自定义starter
开发过程中,经常会有一些独立于业务之外的配置模块。如果我们将这些可独立于业务代码之外的功能配置模块封装成一个个starter,复用的时候只需要将其在pom中引用依赖即可,SpringBoot为我们完成自动装配。
自定义starter的命名规则
SpringBoot提供的starter以 spring-boot-starter-xxx 的方式命名的。官方建议自定义的starter使用xxx-spring-boot-starter 命名规则。以区分SpringBoot生态提供的starter。
二、使用步骤
整个过程分为两部分:
- 自定义starter
- 使用starter
自定义starter
- 新建maven工程,工程名为xxx-spring-boot-starter,导入依赖:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>2.5.2.RELEASE</version>
</dependency>