初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心

愛訂不訂發表於2019-03-26

花小錢,周邊遊,馬上搶,請關注公眾號:愛訂不訂

作者:唐璜

關於Nacos已經展開了三篇文章:

初探Nacos(一)-- 單機模式啟動

初探Nacos(二)-- SpringCloud使用Nacos的服務註冊與發現

初探Nacos(三)-- SpringBoot下整合Dubbo和Nacos

Spring使用Nacos作為配置中心,請直接參考官方例子:nacos-spring-config-example。我們今天來嘗試的是SpringBoot下使用Nacos作為配置中心。

這次我們不再新建專案,直接在之前的《初探Nacos(二)-- SpringCloud使用Nacos的服務註冊與發現》專案的消費者服務(模組名:nacos-demo-rest-consumer)上基礎上進行。

首先,我們在pom.xml新增依賴。

<dependency>
    <groupId>com.alibaba.boot</groupId>
    <artifactId>nacos-config-spring-boot-starter</artifactId>
    <version>0.2.0-RC1</version>
</dependency>
複製程式碼

然後在application.properties增加一行配置:

nacos.config.server-addr=127.0.0.1:8848
複製程式碼

第二步,在SpringBoot啟動類上加上註解@NacosPropertySource(dataId = "nacos-demo-rest-consumer", autoRefreshed = true),dataId為配置中心的配置源唯一ID,autoRefreshed設定為自動重新整理配置。 再通過Nacos的 @NacosValue 註解設定屬性值,其中${nacos.test.properties:123}冒號後面的值表示如果取不到配置給的一個預設值。

    @NacosValue(value = "${nacos.test.properties:123}", autoRefreshed = true)
    private String testProperties;

    @GetMapping("/test")
    public String test(){
        return testProperties;
    }
複製程式碼

包含原有程式碼,整體程式碼如下圖:

初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心

第三步,登入Nacos控制檯,在配置管理-配置列表點選右側的+號按鈕,進入新建配置介面,DataId按照前面註解@NacosPropertySource的值,配置格式為properties,配置內容使用nacos.test.properties為key,如下圖設定後,點選發布。

初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心

第四步,啟動該消費者服務,會看到日誌...Nacos Config Metadata : dataId='nacos-demo-rest-consumer', groupId='DEFAULT_GROUP', beanName='nacosConsumerApplication'..., 開啟瀏覽器,訪問http://127.0.0.1:18081/test,可以看到已成功讀取到配置檔案。

初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心

我們到Nacos控制檯配置管理-配置列表對於DataId的一行右側點選編輯進行修改配置,將配置內容改為nacos.test.properties=abc123,點選發布按鈕。

初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心
然後我們再到瀏覽器重新整理頁面,可以看到已自動重新整理。
初探Nacos(四)-- SpringBoot下使用Nacos作為配置中心

整個過程非常順利,其他的配置格式大家也可以嘗試一下。當然SpringCloud下使用Nacos作為配置中心也會有所不同,目測要用到Spring cloud alibaba,暫時不考慮使用,有空我們們再一起嘗試。

相關文章