springboot 外部化配置

背景:修改jar包中的配置比较麻烦 项目部署的时候放一个配置文件在jar包外

配置文件优先级:

1.jar包内的application.properties/yaml

2.jar包内的application-{profile}.properties/yaml

3.jar包外的application.properties/yaml

4.jar包外的application-{profile}.properties/yaml

这里4的优先级最高 可以覆盖前面的

properties优先级高于ymal

按照如下配置后 即config文件下配置 启动优先级高于根目录下:

其中使用 命令行加参数的启动方式优先级更高 在部署环境有配置文件的情况下

-同理 部署目录下也可以放置config文件夹 其优先级较高 如果config里面还有子目录 里面也有配置文件 其优先级更高

-重复的被覆盖 不同的被生效

-其他配置文件 比如自定义的 abc.yaml

可以在其他配置文件中进行导入

spring.config.import=classpath:/abc.properties 具体根据该文件实际位置而不同

-如果外部配置一样的,会覆盖该配置文件中的值

-配置文件中的变量可以被@Value 注入到类中的字段

@Value(" h a h a " ) S t r i n g h a h a ; 或者 @ V a l u e ( " {haha}") String haha; 或者@Value(" haha")Stringhaha;或者@Value("{haha:阿萨大大}") 如果没有配置 默认值是阿萨大大

-配置文件引用其他变量的写法

bca=端口值是:${server.port}

相关推荐
_日拱一卒7 分钟前
LeetCode:23合并K个升序链表
java·数据结构·算法·leetcode·链表·职场和发展
cany10007 分钟前
C++ -- 泛型编程
java·开发语言·c++
lee_curry9 分钟前
第三章 jvm中的对象和执行引擎
java·jvm·执行引擎
wang090710 分钟前
Linux性能优化之文件系统基础介绍
java·linux·性能优化
AI攻城狮10 分钟前
DeepSeek 的 Vision 能力要来了吗?
人工智能·后端·openai
迷藏49419 分钟前
# 发散创新:用Locust实现高并发场景下的精准压力测试与性能调优实战在现代微服务架构中,**接口稳定性与响应速度**已成为衡量
java·python·微服务·架构·压力测试
用户6224757584624 分钟前
面试官问我:"如何实现你项目中的这块代码."我说:"看好了."
后端
空中海24 分钟前
Nacos 2: Spring Boot Demo 实战
java·spring boot·后端
土豆.exe28 分钟前
Cast Attack:Java 中 Ghost Bits(幽灵比特)引发的新型安全威胁——Java 生态里被忽视的底层风险引发一系列绕过
java·python·安全
阿丰资源30 分钟前
基于Spring Boot的美容院管理系统(附源码+数据库+文档)
数据库·spring boot·后端