springcloud alibaba nacos config
官方文档地址: https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config
1.基本使用
使用非常简单,参照文档即可,pom:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
bootstrap.yml:
server: port: 4455 spring: application: name: nacos-config-client cloud: nacos: config: server-addr: 127.0.0.1:8848 file-extension: yaml
application.yml:
spring:
profiles:
active: test
controller获取config内容:
@RestController @RefreshScope public class NacosConfigController { @Value("${service.info}") private String info; @GetMapping("/info") public String getInfoFromNacosConfig() { return info; } }
nacos config:

测试结果:

2.nacos配置文件获取规则:
文档粘贴出来这段话: spring-cloud-starter-alibaba-nacos-config 在加载配置的时候,不仅仅加载了以 dataid 为 ${spring.application.name}.${file-extension:properties} 为前缀的基础配置,还加载了dataid为 ${spring.application.name}-${profile}.${file-extension:properties} 的基础配置。在日常开发中如果遇到多套环境下的不同配置,可以通过Spring 提供的 ${spring.profiles.active} 这个配置项来配置。
解释: 读取规则是 读取nacos上 ${spring.application.name}-${profile}.${file-extension:properties} 的配置文件,举例我的,配置名字就可以是nacos-config-client-dev.yaml
3.nacos config的几个控制粒度: dataId, group, namespace
dataId
通过spring.profiles.active的不同,就是dataId粒度的不同。
测试:
当

就读取到nacos-config-client-test.yaml的内容

当

就读取到nacos-config-client-dev.yaml的内容:

group
看看nacos config:

测试:
当


当


namespace
默认的namespace是public,我创建了两个namespace: namespace1, namespace2

然后在这两个namespace下分别创建config


测试:
当


当:


以上就是试验结果。文档里也讲的挺详细的。不清楚就看看文档。

浙公网安备 33010602011771号