300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 自定义SpringBoot Starter实现

自定义SpringBoot Starter实现

时间:2021-12-22 23:59:00

相关推荐

自定义SpringBoot Starter实现

文章目录

自定义stater pom文件配置文件类properties使用配置类创建AutoConfiguration项目结构

自定义stater pom文件

引入自动配置类spring-boot-starter

<?xml version="1.0" encoding="UTF-8"?><project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0 /xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.sl.learn.starter</groupId><artifactId>spring-boot-starter</artifactId><version>1.0-SNAPSHOT</version><properties><java.version>1.8</java.version></properties><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.6.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

配置文件类properties

用来保存默认的配置

@ConfigurationProperties(prefix = "stater")public class StaterProperties {private String code;private String desc;public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc = desc;}}

使用配置类

public class StaterService {private StaterProperties staterProperties;public StaterProperties getStaterProperties() {return staterProperties;}public void setStaterProperties(StaterProperties staterProperties) {this.staterProperties = staterProperties;}public String say() {return staterProperties.getCode() + "-" + staterProperties.getDesc();}}

创建AutoConfiguration

创建一个AutoConfiguration,引用定义好的配置信息;在AutoConfiguration中实现所有starter应该完成的操作,并且把这个类加入spring.factories配置文件中进行声明。

@Configuration@EnableConfigurationProperties(StaterProperties.class)public class StaterAutoConfiguration {@Bean@ConditionalOnBeanpublic StaterService staterService() {return new StaterService();}}

org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.sl.learn.config.StaterAutoConfiguration

项目结构

打包项目安装到Maven仓库,之后在一个SpringBoot项目中引入该项目依赖,然后就可以使用该starter了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。