Spring Boot 的配置加载顺序

Spring Boot 的配置加载顺序是"后来居上"------优先级高的配置源会覆盖优先级低的配置源中的同名配置

覆盖规则如下:

  • 后加载的配置具有更高的优先级,会覆盖先加载的配置。
  • 如果多个配置源中存在同名配置项,最终生效的是具有最高优先级的那个配置项。

举个实际例子

假设有以下两个配置源

java 复制代码
***:
  ad:
    rocketmq:
      name-server: 127.0.0.1:9876  # 默认配置
java 复制代码
# 设置环境变量
export ITBOX_AD_ROCKETMQ_NAME_SERVER=10.10.20.46:9876

最终生效的 itbox.ad.rocketmq.name-server 是环境变量的值:10.10.20.46:9876

线上部署场景,假设激活了 kubernetes Profile,加载顺序和覆盖逻辑如下 :

相关推荐
二十雨辰几秒前
[SSM]Spring快速入门
java·spring
豆约翰4 分钟前
Z字形扫描ccf
java·开发语言·算法
闲人编程9 分钟前
权限系统设计与RBAC实现
java·网络·数据库·rbac·权限·codecapsule
nbsaas-boot10 分钟前
JWT 与 Session 的实用场景分析:从架构边界到工程落地
java·开发语言·架构
Tim_1010 分钟前
【C++入门】03、C++整型
java·开发语言·jvm
王中阳Go16 分钟前
都2026年了,PHP还纠结转Go还是Java呢?安利一个无缝迁移的框架~
java·后端·go
ss27319 分钟前
阻塞队列:三组核心方法全对比
java·数据结构·算法
老华带你飞21 分钟前
二手商城|基于springboot 二手商城系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·spring
Tadas-Gao25 分钟前
GraphQL:下一代API架构的设计哲学与实践创新
java·分布式·后端·微服务·架构·graphql
番茄迷人蛋33 分钟前
后端项目服务器部署
java·运维·服务器·spring