springBoot自定义starter

+ springBoot版本 3.5.9,4.0.1进行的测试
### 引入依赖
+ 实际测试时不引入这两个依赖也可以正常
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>${spring-boot.version}</version>
<optional>true</optional>
</dependency>
```
### 编写starter的自己的业务逻辑
### 编写AutoConfiguration类
+ @Configuration 注解 告诉spring这是一个配置类
+ @EnableConfigurationProperties(MyProperties.class) 开启这个类的属性绑定,这样就可以在引入项目里的application.ymal中进行配置
+ @Conditional,@Bean等注解向容器中添加组件
```java
// 这是一个配置类
@Configuration
// 开启这个类的属性绑定,这样就可以在引入项目里的application.ymal中进行配置
@EnableConfigurationProperties(MyProperties.class)
public class FirstStarterAutoConfiguration {
@Bean
public TestService testService(){
return new TestService();
}
}
```
### 新建imports文件
+ 在项目resources/META-INF/spring/目录下新建org.springframework.boot.autoconfigure.AutoConfiguration.imports文件
+ 文件中指定自动配置类的全类名
+ **注意文件名必须是这个**
```xml
com.cpz.final_test.firststarter.FirstStarterAutoConfiguration
```
### 引入这个starter

posted @ 2026-01-20 16:28  lyfa  阅读(1)  评论(0)    收藏  举报