中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

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

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

成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括宜賓網(wǎng)站建設(shè)、宜賓網(wǎng)站制作、宜賓網(wǎng)頁制作以及宜賓網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,宜賓網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到宜賓省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

檢查配置

主要有以下幾個(gè)檢測項(xiàng):
1. 環(huán)境變量的檢查
2. java運(yùn)行變量的檢查
3. 指定位置文件的檢查
4. host檢查

運(yùn)行啟動

要想一啟動程序就運(yùn)行,我們自然而然就想到了springboot 的 starter 項(xiàng)目,對,我們把這個(gè)也封裝成一個(gè)starter, 這樣一啟動springboot應(yīng)用,就可以檢查各種條件了.

制作starter

引入依賴:

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

項(xiàng)目結(jié)構(gòu)如下圖所示

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");    }}

運(yùn)行效果如下:

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

這樣我們就做到了在項(xiàng)目一啟動的時(shí)候就運(yùn)行檢測代碼的效果

編寫檢查代碼

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

public class InitCheck  {
   /** 操作系統(tǒng)類別: 1是win, 2是其他 */    private Integer osType;
   /** 環(huán)境變量的map */    private Map<String ,String> envMap = System.getenv();
   public InitCheck() {        //獲取操作系統(tǒng)類型        String osName = System.getProperty("os.name");        this.osType = osName.contains("windows")?1:2;    }
   /**     * 對外提供的調(diào)用方法,在 new 完InitCheck之后,就調(diào)用這個(gè)方法     *     * @return     */    public boolean checkAll(){                return checkApollo();    }
   /**     * 檢查apollo的配置是否正確     * @return     */    private boolean checkApollo(){        //apollo主要是檢查ENV有沒有設(shè)置,而且只檢查環(huán)境變量和文件        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 ,  設(shè)置環(huán)境變量 ENV=dev 或者在文件 %s 中寫入 ENV=dev \n",filePath);        }        return result;    }
}

運(yùn)行效果如下圖所示:

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

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

到此,相信大家對“java使用springboot-starter啟動檢查配置是否滿足要求”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

本文題目:java使用springboot-starter啟動檢查配置是否滿足要求
網(wǎng)址分享:http://www.rwnh.cn/article14/igjgge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司App開發(fā)、商城網(wǎng)站全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
伊春市| 申扎县| 泌阳县| 四会市| 抚宁县| 安西县| 舒城县| 阿拉善盟| 湟中县| 鞍山市| 英德市| 敦化市| 开化县| 武清区| 英吉沙县| 巢湖市| 石楼县| 剑川县| 汶上县| 桐城市| 方正县| 惠州市| 西林县| 南陵县| 怀宁县| 巴林右旗| 安陆市| 灌云县| 徐汇区| 吉木萨尔县| 平南县| 青田县| 宜川县| 萍乡市| 黔西县| 石门县| 焦作市| 开原市| 聂荣县| 鲜城| 镇原县|