008SpringBoot之外部配置加载顺序
2018-05-28 本文已影响33人
编程界的小学生
一、讲解
1、定义
SpringBoot也可以从以下位置加载配置;优先级从高到低;高优先级的配置覆盖低优先级的配置,所有的配置会形成互补配置。
2、几种方式
2.1、命令行参数
2.1.1、所有的配置都可以在命令行上进行指定
2.1.2、用法:
java -jar xxx.jar --server.port=8087 --server.port=8087 --server.context-path=/demo
PS:多个配置用空格分开; 语法为:--配置项=值 --配置项=值
2.2、来自java:comp/env的JNDI属性
2.3、Java系统属性(System.getProperties())
2.4、操作系统环境变量
2.5、RandomValuePropertySource配置的random.*属性值
==由jar包外向jar包内进行寻找;==
==优先加载带profile==
2.6、jar包外部的application-{profile}.properties或application.yml(带spring.profile)配置文件
2.7、jar包内部的application-{profile}.properties或application.yml(带spring.profile)配置文件
==再来加载不带profile==
2.8、jar包外部的application.properties或application.yml(不带spring.profile)配置文件
2.9、jar包内部的application.properties或application.yml(不带spring.profile)配置文件
2.10、@Configuration注解类上的@PropertySource
2.11、通过SpringApplication.setDefaultProperties指定的默认属性
所有支持的配置加载来源;
二、广告
-
QQ群【Java初学者学习交流群】:458430385
-
微信公众号【Java码农社区】
- 今日头条号:编程界的小学生