SpringBoot外部配置夹加载顺序
Posted Timeouting
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot外部配置夹加载顺序相关的知识,希望对你有一定的参考价值。
SpringBoot外部配置夹加载顺序
SpringBoot除了可以在项目里边的四个位置写好配置,上次说到可以用命令行--spring.config.location=xxxxx指定;他还可以在以下方式更改配置
优先级从高到低
1. 命令行参数
2. 来自java:comp/env的JNDI属性
3. Java系统属性 ( System.getProperties() )
4.操作系统环境变量
5. RandomValuePropertySource配置的random. *属性值
6. jar包外部的application-{profile}.properties或application.yml(带spring.profile)配置文件
7. jar包内部的application-{profile}.properties或application.ym(带spring.profile)配置文件
8. jar包外部的application.properties或application.ymI(不带spring.profile)配置文件
9. jar包内部的application.properties或application.yml(不带spring.profile)配置文件
10. @Configuration注解类 上的@ PropertySource
11.通过SpringApplication.setDefaultProperties指定的默认属性
6-9遵循一个规定:由jar包外到jar包内优先加载带profile的文件,高优先级覆盖低优先级
jar包外如果不在同级下,需要指定位置--spring.config.location;如果在统一级下,就按照6-9的规则的
1.
命令行指定端口号8087,那么就是开启8087端口访问
以上是关于SpringBoot外部配置夹加载顺序的主要内容,如果未能解决你的问题,请参考以下文章
springboot配置文件的加载位置以及外部配置加载顺序04
3springboot:springboot配置文件(外部配置加载顺序自动配置原理,@Conditional)