更详细或者其他配置方法,可以参考这位大佬的博客:Nacos配置管理及动态刷新
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
这里可以看到传入的参数是一个
Config
对象数组。在yml的对象配置一般都是
- arg1: arg1 arg2: arg2 arge: arg3
对象数组呢?那就是这种
-
开头的可以写多个。其实看到extension-configs
带s就要想到那么对象中的属性其实是对应类的属性名称。
哪些属性的类型可以直接拿字符串配置的呢:
8中基本类型、包装类型、String、URI、Class和Resource
注:URI:统一资源路径地址、Class:类对象、Resource:资源文件路径
6. 读一读都有哪些属性可以配置,ctrl单击Config
-
dataId: 对应nacos下的dataId/单个文件下配置时候的name
-
group: 就是组,没找到是否可以不写,建议写上,严谨一点。
-
refresh: 是否要取设置自动更新,默认不开启。
(可以在nacos上面修改数据,会动态刷新)
7. 配置上启动测试即可。
Java的开发习惯,当返回类型是boolean
类型时候,getter方法修改为: isXxx