yml配置從nacos配置中心取資料(單個或多個)

Codorld發表於2021-05-28
  1. 讀取單個檔案

    spring:
      cloud:
        nacos:
          config:
            server-addr: localhost:8848
            namespace: **********下面的配置檔案必須在此名稱空間下
            name: test-one
            file-extension: yaml
    
  2. 讀取多個(此處只寫了一個)

    spring:
      cloud:
        nacos:
          config:
            server-addr: localhost:8848
            namespace: **********下面的配置檔案們必須在此名稱空間下
            extension-configs:
              - dataId: test-one.yaml
                group: DEFAULT_GROUP
                refresh: true
                
              - dataId: test-two.yaml
                group: DEFAULT_GROUP
                refresh: true
    
  3. nacos上面的配置

    • Data ID:test-one.yaml / test-two.yaml

    • 配置格式:YAML 注意yaml格式,也即空格和縮排

    • 內 容:可以使用資料庫做測試,但是記得加上字首

      spring:
        datasource:
        	##...
      
  4. 小坑

    • 單個檔案:
      • name:必須要帶.yaml
      • file-extension: 必須是yaml,不可以是yml
    • 多個檔案:
      • nacos上面Data ID必須帶上.yaml
      • 配置檔案中的dataId也要帶上.yaml
  5. 讀一讀原始碼,配置檔案引數需要的引數

    yml檔案下對於這種又沒有提示,不想網上搜,只能自己點一點原始碼,速度還快。

    • 按住Ctrl+單擊標題2中的extension-configs

      image-20210528184620976

      這裡可以看到傳入的引數是一個Config物件陣列。

      在yml的物件配置一般都是

       - arg1: arg1
         arg2: arg2
         arge: arg3
      

      物件陣列呢?那就是這種-開頭的可以寫多個。其實看到extension-configs帶s就要想到

      那麼物件中的屬性其實是對應類的屬性名稱。

      哪些屬性的型別可以直接拿字串配置的呢:

      8中基本型別、包裝型別、String、URI、Class和Resource

      注:URI:統一資源路徑地址、Class:類物件、Resource:資原始檔路徑

  6. 讀一讀都有哪些屬性可以配置,ctrl單擊Config

    image-20210528190348894

    • dataId: 對應nacos下的dataId/單個檔案下配置時候的name

    • group: 就是組,沒找到是否可以不寫,建議寫上,嚴謹一點。

    • refresh: 是否要取設定自動更新,預設不開啟。

      (可以在nacos上面修改資料,會動態重新整理)

  7. 配置上啟動測試即可。


​ Java的開發習慣,當返回型別是boolean型別時候,getter方法修改為: isXxx

相關文章