springboot 自定义starter
自定义start启动器的简单流程
pom文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.2</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>mystarter-spring-boot-starter</artifactId> <version>0.0.1-SNAPSHOT</version> <name>mystarter-spring-boot-starter</name> <description>mystarter-spring-boot-starter</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--‐导入配置文件处理器,配置文件进行绑定就会有提示--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> </dependencies> </project>
@RestController public class MyControler { //注入配置文件类 @Autowired Myproperties myproperties; @RequestMapping("/hello") public String hello(){ return myproperties.getName() +"hello"; } }
@ConfigurationProperties(prefix = "test.starter") public class Myproperties { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }
//启动类启动配置 @Configuration //启动条件,需要配置文件配置 test.starter.name 属性 @ConditionalOnProperty("test.starter.name") //导入配置文件 @EnableConfigurationProperties(Myproperties.class) public class MyAutoConfiguration { @Bean public MyControler myControler(){ return new MyControler(); } }
注意:3.x版本的springboot 的启动类配置是放在 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 下的,
以前的版本可以放在 META-INF/spring.properties里 注意区别版本
使用:pom.xml 导入自制启动类。注意使用前要吧自定义启动类jar包导入到本地仓库,否则maven引用不到
<dependency> <groupId>com.example</groupId> <artifactId>mystarter-spring-boot-starter</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency>
配置文件添加配置,这是启动类启动的条件:
分类:
spring
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!