Spring Boot 应用中,配置的加载优先级

在 Spring Boot 应用中,配置的加载优先级是一个重要的概念,它决定了当存在多个相同配置项时,哪个配置会被最终采用。 命令行参数、外部application.yml文件和 JAR 包内部配置的优先级顺序如下:

配置优先级顺序(从高到低)

命令行参数(最高优先级)

通过java -jar app.jar --key=value形式传递的参数

例如:java -jar myapp.jar --server.port=8081

外部配置文件(按以下顺序加载,后加载的覆盖先加载的)

命令行指定的配置文件(--spring.config.location=path/to/config.yml)

当前目录下的config/目录中的配置文件

当前目录中的配置文件

类路径下的config/目录中的配置文件

类路径根目录下的配置文件

JAR 包内部配置文件(最低优先级)

通常是src/main/resources目录下的配置文件

例如:application.yml、application.properties

具体到你的场景

当你启动 JAR 包时,配置的优先级顺序为:

命令行参数(通过--指定的参数)

外部 application.yml 文件(如果存在于当前目录或指定目录)

JAR 包内部的 application.yml 文件

示例说明

相关推荐
LiRuiJie8 小时前
深入剖析Spring Boot / Spring 应用中可自定义的扩展点
java·spring boot·spring
Funcy8 小时前
XxlJob 源码分析03:执行器启动流程
后端
豌豆花下猫10 小时前
Python 潮流周刊#118:Python 异步为何不够流行?(摘要)
后端·python·ai
尚学教辅学习资料10 小时前
Ruoyi-vue-plus-5.x第五篇Spring框架核心技术:5.1 Spring Boot自动配置
vue.js·spring boot·spring
晚安里11 小时前
Spring 框架(IoC、AOP、Spring Boot) 的必会知识点汇总
java·spring boot·spring
秋难降11 小时前
SQL 索引突然 “罢工”?快来看看为什么
数据库·后端·sql
上官浩仁11 小时前
springboot ioc 控制反转入门与实战
java·spring boot·spring
Access开发易登软件12 小时前
Access开发导出PDF的N种姿势,你get了吗?
后端·低代码·pdf·excel·vba·access·access开发
叫我阿柒啊12 小时前
从Java全栈到前端框架:一位程序员的实战之路
java·spring boot·微服务·消息队列·vue3·前端开发·后端开发
中国胖子风清扬12 小时前
Rust 序列化技术全解析:从基础到实战
开发语言·c++·spring boot·vscode·后端·中间件·rust