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