SpringBoot
配置文件优先级及踩坑
优先级顺序
- 当前目录下的
/config
子目录 - 当前目录
classpath:/config/
(项目resources/config
下)classpath:/
(项目resources
根目录)
验证
第四种情况
第一种情况:
很明显是按照上文所说的优先级加载的
加入第一种优先级的配置文件缺少一些属性,那该去哪里读取呢?同日常我们配置的application.yml、application-dev.yml
这些一样,dev
找不到就去application.yml
找,/config
中缺少的也会按照优先级一层一层往下寻找。
我在/config
路径下的配置文件没有age
这个属性,所以它按照优先级一层一层去寻找,在classpath
下找到age=13
的属性,可以参考上面几张图对比。