先说结论
使用Nacos作为配置中心时,因工程配置文件名称的不同,配置Nacos参数的方式也有所不同。
如下示例使用的框架及服务版本信息为:
- Spring Boot:2.6.13
- Spring Cloud:2021.0.5
- Spring Cloud Alibaba:2021.0.5.0
- Nacos:2.2.3
项目实践
使用application.yaml

当在项目中使用application*.yaml作为工程配置文件时,做如下配置。
1 2 3 4 5
| <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
|
通过spring.config.import同时指定本地和nacos配置。
1 2 3 4 5 6 7 8 9 10 11 12 13
| spring: cloud: nacos: config: namespace: public server-addr: 192.168.10.10:8848 username: xxx password: xxx group: DEFAULT_GROUP enabled: true file-extension: yaml config: import: application-dev.yml,nacos:application-redis.yaml
|
当需要从Nacos配置中心加载多个配置文件时,每一个配置文件都需要使用nacos:前缀指定,如下示例:
1 2 3
| spring: config: import: application-dev.yml,nacos:application-redis.yaml,nacos:application-mysql.yaml
|
使用bootstrap.yaml

当在项目中使用bootstrap*.yaml作为工程配置文件时,做如下配置。
1 2 3 4 5 6 7 8 9
| <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency>
|
通过spring.cloud.nacos.config.extension-configs指定多份nacos配置。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| spring: cloud: nacos: config: namespace: public server-addr: 192.168.10.10:8848 username: nacos password: xxxxxx group: DEFAULT_GROUP enabled: true file-extension: yaml extension-configs: - data-id: application-redis.yaml group: DEFAULT_GROUP refresh: true - data-id: ${spring.application.name}.yaml group: DEFAULT_GROUP refresh: true refresh-enabled: true import-check: enabled: false
|
至此。