目录
一、测试环境版本
-
spring-boot-starter-parent 2.7.10
-
spring-cloud-starter-bootstrap 3.1.6
-
spring-cloud-starter-alibaba-nacos-config 2021.0.4.0
-
nacos-client 2.1.1
-
nacos服务端 2.2.1
二、测试结果
1、标准的SpringBoot应用
在标准的SpringBoot应用中,本地配置加载顺序如下:
- bootstrap配置 加载先于 application配置
- 不带profile的配置 加载先于 带profile的配置
- (不含后缀的)同文件名配置 *.yaml 加载先于 *.properties
2、含有Nacos配置中心的SpringBoot应用
带Nacos配置中心的SpringBoot应用中,配置加载顺序如下:
- 本地bootstrap配置 加载先于 本地application配置
- 本地配置 加载先于 nacos配置中心
- nacos配置中心上共享配置(见下说明) 加载先于 nacos配置中心该服务配置(见下说明)
- 不带profile的配置 加载先于 带profile的配置
- 本地(不含后缀的)同文件名配置 *.yaml 加载先于 *.properties
- nacos配置中心因需要通过data ID指定(或者通过spring.cloud.nacos.config.file-extension指定后缀),所以对于Nacos配置中心上的某个Data ID而言,不存在既加载其*.yaml,又加载其*.yaml的情形。