Spring Cloud Alibaba 教程 | Nacos(三)

使用Nacos作爲配置中心

前面我們已經介紹過濾Nacos是一個更易於構建雲原生應用的動態服務發現、配置管理和服務管理平臺。所以它可以作爲註冊中心和配置中心,作爲註冊中心Nacos可以讓我們靈活配置多種環境的參數,使得項目在打包過程中不需要過多的關注目標環境問題,達到項目一次打包,多處運行的目標。今天我們就來介紹一下如何使用Nacos作爲配置中心。

Demo

第一步:在Nacos管理平臺配置列表菜單選項點擊“+”號新建配置,新建配置之後點擊發布按鈕。

在這裏插入圖片描述
在這裏插入圖片描述
配置規則

  • dataId :格式如下 ${prefix} - ${spring.profiles.active} . ${file-extension}

  • prefix 默認爲 spring.application.name 的值

  • spring.profiles.active 當前環境對應的 profile

  • file-extension 爲配置內容的數據格式,可以通過配置項 spring.cloud.nacos.config.file-extension來配置。 目前只支持 properties 類型。

group 默認DEFAULT_GROUP

當activeprofile 爲空時直接填寫 spring.application.name值即可 默認properties

在這裏插入圖片描述
第二步:新建一個項目(這裏使用之前的nacos-provider),pom.xml加入nacos配置中心依賴。

<!--Nacos註冊中心-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

在這裏插入圖片描述
第三步:指定配置中心地址。

spring:
  application:
    name: nacos-provider
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.0.127:8848 #註冊中心地址
      config:
        server-addr: 192.168.0.127:8848 #註冊中心地址

server:
  port: 17357

第四步:使用配置中心參數

@SpringBootApplication
@EnableDiscoveryClient
public class NacosProvider {

    public static void main(String[] args) {
        SpringApplication.run(NacosProvider.class,args);
    }
    
    @RestController
    @RefreshScope
    class ConfigController {

        @Value("${config.address}")
        private String address;

        @GetMapping("/print/address")
        public String printAddress(){
            return address;
        }

    }

}

在這裏插入圖片描述
第五步:使用@RefreshScope註解之後可以實時刷新Nacos配置中心修改後的參數值。
在這裏插入圖片描述

在這裏插入圖片描述

在這裏插入圖片描述

注意點

Nacos配置中心的配置項會覆蓋在項目中相同鍵的配置項。

關注公衆號瞭解更多原創博文

Alt

發佈了110 篇原創文章 · 獲贊 116 · 訪問量 90萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章