SpringBoot 配置文件加载优先级
2024-01-09 18:08:14
SpringBoot 配置文件加载优先级
前言
最近在使用k8s部署项目的时候,发现Dockerfile文件中的命令后面跟的参数,无法覆盖nacos中的参数,今天有时间正好来整理一下Springboot配置的加载顺序
SpringBoot 配置文件加载优先级
整理加载顺序第一个肯定看官方文档:https://docs.spring.io/spring-boot/docs/2.2.9.RELEASE/reference/htmlsingle/#boot-features-external-config
看不懂我们直接用翻译软件翻译一下
这里我们只对比常用的几个地方的配置优先级:
而且有的项目会将 application.properties 文件放在config文件夹内,于是进一步对比了这两个位置的优先级,结果如下
. project-sample
├── config
│ ├── application.yml (4)
│ └── src/main/resources
| │ ├── application.yml (1)
| │ └── config
| | │ ├── application.yml (2)
├── application.yml (3)
注:src/main/resources下的配置文件在项目编译时,会放在target/classes下
启动时加载配置文件顺序:1 -> 2 -> 3 -> 4,优先级 4 > 3 > 2 > 1
注意:
- 如果在IDEA中是多 module 项目,3 和 4 的位置是指的是项目根目录下的位置
- 当 .properties 和 .yml 文件同时存在时,.properties会失效,.yml会起作用。
nacos上的配置 > 命令行配置 > system env > classpath:application.yml > classpath:bootstrap.yml
文章来源:https://blog.csdn.net/qq_39017153/article/details/135478496
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!