中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java使用springboot-starter啟動檢查配置是否滿足要求

發布時間:2021-08-30 22:23:05 來源:億速云 閱讀:144 作者:chen 欄目:大數據

本篇內容主要講解“java使用springboot-starter啟動檢查配置是否滿足要求”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“java使用springboot-starter啟動檢查配置是否滿足要求”吧!

檢查配置

主要有以下幾個檢測項:
1. 環境變量的檢查
2. java運行變量的檢查
3. 指定位置文件的檢查
4. host檢查

運行啟動

要想一啟動程序就運行,我們自然而然就想到了springboot 的 starter 項目,對,我們把這個也封裝成一個starter, 這樣一啟動springboot應用,就可以檢查各種條件了.

制作starter

引入依賴:

dependencies {  implementation platform('org.springframework.boot:spring-boot-dependencies:2.1.6.RELEASE')  compile group: 'org.springframework.boot', name: 'spring-boot-autoconfigure'  }

項目結構如下圖所示

java使用springboot-starter啟動檢查配置是否滿足要求

spring.factories:

org.springframework.boot.autoconfigure.EnableAutoConfiguration=\com.platform.tools.starter.spring.boot.ToolAutoConfigurationorg.springframework.context.ApplicationContextInitializer=\com.platform.tools.starter.spring.boot.ToolApplicationContextInitializer

ToolAutoConfiguration.java

@Configurationpublic class ToolAutoConfiguration {}

ToolApplicationContextInitializer.java

public class ToolApplicationContextInitializer implements ApplicationContextInitializer {
   @Override    public void initialize(ConfigurableApplicationContext applicationContext) {        System.out.println("write check code here");    }}

運行效果如下:

java使用springboot-starter啟動檢查配置是否滿足要求

這樣我們就做到了在項目一啟動的時候就運行檢測代碼的效果

編寫檢查代碼

如上所述有環境變量,文件等簡單的校驗,本文以apollo的檢測為例寫幾個典型的獲取配置的代碼,下面的代碼中包含判斷文件是否存在,判斷環境變量,判斷系統變量

public class InitCheck  {
   /** 操作系統類別: 1是win, 2是其他 */    private Integer osType;
   /** 環境變量的map */    private Map<String ,String> envMap = System.getenv();
   public InitCheck() {        //獲取操作系統類型        String osName = System.getProperty("os.name");        this.osType = osName.contains("windows")?1:2;    }
   /**     * 對外提供的調用方法,在 new 完InitCheck之后,就調用這個方法     *     * @return     */    public boolean checkAll(){                return checkApollo();    }
   /**     * 檢查apollo的配置是否正確     * @return     */    private boolean checkApollo(){        //apollo主要是檢查ENV有沒有設置,而且只檢查環境變量和文件        String env = envMap.get("ENV");        boolean envFlag = env != null && !env.isEmpty();        String filePath = osType==1?"C:/opt/settings/server.properties":"/opt/settings/server.properties";        boolean fileFlag = Files.exists(Paths.get(filePath));        boolean result  = envFlag || fileFlag;        if(!result){            System.out.printf("請正確配置apollo ,  設置環境變量 ENV=dev 或者在文件 %s 中寫入 ENV=dev \n",filePath);        }        return result;    }
}

運行效果如下圖所示:

java使用springboot-starter啟動檢查配置是否滿足要求

其他檢查代碼因不好脫敏,就先不發出來了,但思路都是一致的,大家也可以寫一寫嘗試下

到此,相信大家對“java使用springboot-starter啟動檢查配置是否滿足要求”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新化县| 中阳县| 海林市| 郑州市| 焦作市| 平远县| 皋兰县| 瑞丽市| 沁源县| 云阳县| 罗城| 洛宁县| 汕尾市| 和硕县| 丹东市| 大渡口区| 阿克苏市| 东丰县| 宁陵县| 上思县| 越西县| 桃江县| 资源县| 佛山市| 巨野县| 霍邱县| 辽宁省| 阿城市| 藁城市| 山阳县| 瓮安县| 松溪县| 故城县| 久治县| 潜江市| 德惠市| 德令哈市| 松滋市| 西畴县| 福清市| 河西区|