springboot 如何自己创建starter


  Starter 是一个插件 和依赖包的集合

 他是可以由我们自己手动创建的 我们下面就来讲怎么样手动创建一个starter

 

首先引入jar 包 

在pom.xml中引入SpringBoot自动化配置依赖spring-boot-autoconfigure:

spring-boot-configuration-processor

两个jar包

1.首先starter 依赖包由组件构成 要创建业务类 即service服务类

2.还要创建一个基础属性类类 也就是 包含需要的参数类

@ConfigurationProperties(prefix = "person")

这个注解用于 在application.yml / application.properties中以person开头的配置与该类中的属性一一对应

即 propperties文件里person.**

3.starter 还需要一个核心启动类 把刚才的类进行加载

@Configuration 标注配置类 
@ConditionalOnClass(业务类名称) 确定calsspath下存在该业务类配置生效进行
@EnableConfigurationProperties(基础属性类) 可以进行自动配置属性类 使基础类的@ConfigurationProperties注解生效并且自动配置进srping容器里
@EnableConfigurationProperties将application.properties中对应的属性配置设置于Properties对象中;

要用@atuwer 注入 基础配置类
还有业务类

业务类加注解

@Bean
@ConditionalOnMissingBean(业务类名)
@ConditionalOnProperty(prefix = "前缀名",value = "enabled", havingValue = "true")
KiteService kiteService(){
return new KiteService(kiteProperties);
}

@ConditionalOnMissingBean(业务类名):

与 @Bean 配合使用,只有在当前上下文中不存在某个 bean 的情况下才会执行所注解的代码块,也就是当前上下文还没有 KiteService 的 bean 实例的情况下,才会执行 kiteService() 方法,从而实例化一个 bean 实例出来。

@ConditionalOnProperty:

当应用配置文件中有相关的配置才会执行其所注解的代码块。

使用的方法加上bean注入到spring当中

最后在metat-info下面 创建一个spring.factorie

springboot 自动扫描到这
加载starter配置
rg.springframework.boot.autoconfigure.EnableAutoConfiguration=核心类路径
 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM