springboot 配置文件加载顺序

SpringBoot中配置文件的加载顺序是怎样的?
优先级从高到低,高优先级的配置覆盖低优先级的配置,所有配置会形成互补配置。

复制代码
1.命令行参数。所有的配置都可以在命令行上进行指定;
2.Java系统属性(System.getProperties0) ;
3.操作系统环境变量
4.jar包外部的application-{profile)properties或application.yml(带spring.profile)配置文件
5.jar包内部的application-profile),properties或application.yml带spring,profile)配置文件再来加载不带profile
6.jar包外部的applicationproperties或application.yml(不带spring.profile)配置文件
7.jar包内部的application.properties或application.yml(不带springprofile)配置文件
8.@Configuration注解类上的@PropertySource
  1. spring.config.name属性:如果存在`spring.config.name`属性,Spring Boot会尝试加载与该属性值匹配的文件,无论其扩展名是`.properties`还是`.yml`。例如,如果`spring.config.name=myapp`,则会尝试加载`myapp.properties`或`myapp.yml`。

  2. spring.config.location属性:如果存在`spring.config.location `属性,Spring Boot会按照该属性指定的路径加载配置文件。可以指定单个文件的路径,也可以指定包含通配符的路径。例如,`spring.config.location=file:/path/to/config/ `或`spring.config.location=classpath:/config/*.properties`。

相关推荐
倔强的石头_7 分钟前
【Linux指南】动静态库与链接机制:从原理到实践
linux
前端程序猿i13 分钟前
用本地代理 + ZIP 打包 + Excel 命名,优雅批量下载跨域 PDF
前端·javascript·vue.js·html
云间月131415 分钟前
飞算JavaAI智慧文旅场景实践:从景区管理到游客服务的全链路系统搭建
java·开发语言
盖世英雄酱5813615 分钟前
必须掌握的【InheritableThreadLocal】
java·后端
找不到、了21 分钟前
JVM的逃逸分析深入学习
java·jvm
Danny_FD21 分钟前
Vue2 中使用vue-markdown实现编辑器
前端·javascript·vue.js
用户游民22 分钟前
Flutter 项目热更新加载 libapp.so 文件
前端
coding随想22 分钟前
Vue和React对DOM事件流的处理方法解析
前端
用户479492835691523 分钟前
字节面试官:forEach 为什么不能被中断?
前端·javascript
ccnocare24 分钟前
window.electronAPI.send、on 和 once
前端·electron