yml配置從nacos配置中心取數據(單個或多個)
- 2021 年 5 月 28 日
- 筆記
-
讀取單個文件
spring: cloud: nacos: config: server-addr: localhost:8848 namespace: **********下面的配置文件必須在此命名空間下 name: test-one file-extension: yaml
-
讀取多個(此處只寫了一個)
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
-
nacos上面的配置
-
Data ID:test-one.yaml / test-two.yaml
-
配置格式:YAML 注意yaml格式,也即空格和縮進
-
內 容:可以使用資料庫做測試,但是記得加上前綴
spring: datasource: ##...
-
-
小坑
- 單個文件:
- name:必須要帶
.yaml
- file-extension: 必須是
yaml
,不可以是yml
- name:必須要帶
- 多個文件:
- nacos上面Data ID必須帶上
.yaml
- 配置文件中的dataId也要帶上
.yaml
- nacos上面Data ID必須帶上
- 單個文件:
-
讀一讀源碼,配置文件參數需要的參數
yml文件下對於這種又沒有提示,不想網上搜,只能自己點一點源碼,速度還快。
-
按住Ctrl+單擊標題2中的
extension-configs
這裡可以看到傳入的參數是一個
Config
對象數組。在yml的對象配置一般都是
- arg1: arg1 arg2: arg2 arge: arg3
對象數組呢?那就是這種
-
開頭的可以寫多個。其實看到extension-configs
帶s就要想到那麼對象中的屬性其實是對應類的屬性名稱。
哪些屬性的類型可以直接拿字元串配置的呢:
8中基本類型、包裝類型、String、URI、Class和Resource
註:URI:統一資源路徑地址、Class:類對象、Resource:資源文件路徑
-
-
讀一讀都有哪些屬性可以配置,ctrl單擊
Config
-
dataId: 對應nacos下的dataId/單個文件下配置時候的name
-
group: 就是組,沒找到是否可以不寫,建議寫上,嚴謹一點。
-
refresh: 是否要取設置自動更新,默認不開啟。
(可以在nacos上面修改數據,會動態刷新)
-
-
配置上啟動測試即可。
Java的開發習慣,當返回類型是boolean
類型時候,getter方法修改為: isXxx