欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何實現(xiàn)自己的spring boot starter

 更新時間:2019年08月22日 10:02:40   作者:357029540  
這篇文章主要介紹了如何實現(xiàn)自己的spring boot starter,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

前言

在使用spring boot開發(fā)的時候,我們有時候想要把自己的代碼打包成類似spring-boot-starter-web的樣式來導入到自己的中央倉庫,然后其他項目就可以引用類似springboot那樣的引用了,下面我們就實現(xiàn)一個類似的項目。

1.新建一個spring boot 項目,取名為mybootspringbootstarter,groupId和artifactId如下所示

<groupId>com.my.boot</groupId> 
<artifactId>myboot-spring-boot-starter</artifactId> 
<version>1.0-SNAPSHOT</version> 

這里需要注意的是為了區(qū)分springboot自己的jar,默認規(guī)則的話我們把自己的取名放在spring-boot-starter前面,如上面代碼所示。

2.引入springboot相關jar包來做基礎處理

<dependency> 
  <groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-starter</artifactId> 
  <version>2.1.3.RELEASE</version> 
</dependency> 
<dependency> 
   <groupId>org.springframework.boot</groupId> 
   <artifactId>spring-boot-autoconfigure</artifactId> 
  <version>2.1.0.RELEASE</version> 
</dependency> 
<!--生成配置文件元數(shù)據(jù)結(jié)構--> 
<dependency> 
  <groupId>org.springframework.boot</groupId> 
  <artifactId>spring-boot-configuration-processor</artifactId> 
  <version>2.1.2.RELEASE</version> 
</dependency> 

spring-boot-starter是核心包,必須添加。

3.添加一個可配置的properties類,用于可配置屬性的加載

@ConfigurationProperties(prefix = "com.myboot")
public class MyBootProperties {
  /**
   * 名稱
   */
  private String name;
  /**
   * 是否啟用
   */
  private boolean enable;

....省略get/set方法
}

4.定義一個類來使用properties類的屬性引用

public class MyService {
  /**
   * 名稱
   */
  private String name;
  /**
   * 是否啟用
   */
  private boolean enable;
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public boolean isEnable() {
    return enable;
  }
  public void setEnable(boolean enable) {
    this.enable = enable;
  }
  public void print(){
    System.out.println("name:" + this.name + "----enable:" + this.enable);
  }
}

5.定義好以上類后,我們?nèi)绾蜗馼ean一樣使用呢?那么我們就需要把它定義為一個bean

@Configuration 
@EnableConfigurationProperties(MyBootProperties.class) 
public class MyBootAutoConfiguration { 
  @Bean 
  public MyService myService(MyBootProperties myBootProperties){ 
    MyService myService = new MyService(); 
    myService.setName(myBootProperties.getName()); 
    myService.setEnable(myBootProperties.isEnable()); 
    return myService; 
  } 
} 

6.怎么樣才能在其他架構中引入我們定義的bean呢?我們需要在resources/META-INFO下定義spring.factories文件

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ 
 com.my.boot.configure.MyBootAutoConfiguration 

這個是spring的標準格式,spring的加載器會自動去尋找這個文件下的所有配置實現(xiàn)自動的注入。

通過以上步驟就完成了基本starter的搭建,最后通過maven clean install就可以生成一個jar了在倉庫中,我們可以在另外的項目中像引入springboot相關的jar引入了。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java定義泛型接口和類的方法實例分析

    Java定義泛型接口和類的方法實例分析

    這篇文章主要介紹了Java定義泛型接口和類的方法,結(jié)合實例形式分析了泛型相關概念、原理及泛型接口與類的定義實現(xiàn)方法,需要的朋友可以參考下
    2019-08-08
  • 詳解多云架構下的JAVA微服務技術解析

    詳解多云架構下的JAVA微服務技術解析

    本文介紹了基于開源自建和適配云廠商開發(fā)框架兩種構建多云架構的思路,以及這些思路的優(yōu)缺點
    2021-05-05
  • 一步步帶你入門Java中File類

    一步步帶你入門Java中File類

    java.io.File類是文件和目錄路徑名的抽象表示形式,主要用于文件和目錄的創(chuàng)建、查找和刪除等操作,下面這篇文章主要給大家介紹了關于入門Java中File類的相關資料,需要的朋友可以參考下
    2022-03-03
  • Java中replace的用法實例講解

    Java中replace的用法實例講解

    這篇文章主要給大家介紹了關于Java中replace用法的相關資料,Java中的replace方法是用于字符串替換的方法,它可以接受兩個參數(shù),第一個參數(shù)是需要被替換的字符串,第二個參數(shù)是替換后的字符串,需要的朋友可以參考下
    2024-04-04
  • @PathVariable注解,讓spring支持參數(shù)帶值功能的案例

    @PathVariable注解,讓spring支持參數(shù)帶值功能的案例

    這篇文章主要介紹了@PathVariable注解,讓spring支持參數(shù)帶值功能的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • 詳解SpringMVC中使用Interceptor攔截器

    詳解SpringMVC中使用Interceptor攔截器

    SpringMVC 中的Interceptor 攔截器也是相當重要和相當有用的,它的主要作用是攔截用戶的請求并進行相應的處理,這篇文章主要介紹了詳解SpringMVC中使用Interceptor攔截器,有興趣的可以了解一下。
    2016-12-12
  • Java中的動態(tài)和靜態(tài)編譯實例詳解

    Java中的動態(tài)和靜態(tài)編譯實例詳解

    這篇文章主要介紹了Java中的動態(tài)和靜態(tài)編譯實例詳解的相關資料,需要的朋友可以參考下
    2017-04-04
  • 自定義BufferedReader的實例

    自定義BufferedReader的實例

    下面小編就為大家分享一篇自定義BufferedReader的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • spring mvc 實現(xiàn)獲取后端傳遞的值操作示例

    spring mvc 實現(xiàn)獲取后端傳遞的值操作示例

    這篇文章主要介紹了spring mvc 實現(xiàn)獲取后端傳遞的值操作,結(jié)合實例形式詳細分析了spring mvc使用JSTL 方法獲取后端傳遞的值相關操作技巧
    2019-11-11
  • JavaFx實現(xiàn)拼圖游戲

    JavaFx實現(xiàn)拼圖游戲

    這篇文章主要為大家詳細介紹了JavaFx實現(xiàn)拼圖游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09

最新評論