配置方式
每个starter都有自己默认的配置,如果需要改变默认值,可以在其他地方配置来覆盖掉默认的值,覆盖默认的配置有多种方式,每种方式的优先级也不同,如果在多个地方配置则优先使用优先级高的值,其中命令行参数优先级最高, 其中大部分参数一般都配置在属性文件application.properties中,属性文件即可以覆盖starter中默认的值,也可以自定义值
- 在命令行行输入的参数
- SPRING_APPLICATION_JSON中的属性。SPRING_APPLICATION_JSON是以json格式配置在系统环境变量中的内容
- java:comp/env 里的 JNDI 属性
- Java的系统属性,可以通过System.getProperties()获得的内容
- 操作系统环境变量
- RandomValuePropertySource属性类生成的random.*属性
- 位于当前应用jar包之外,针对不同的profile换将的配置文件内容,例如application-{profile}.properties或者yaml定义的配置文件
- 位于当前应用jar包之内,针对不同的profile换将的配置文件内容,例如application-{profile}.properties或者yaml定义的配置文件
- 位于当前应用jar包之外的application.properties和yaml配置内容
- 位于当前应用jar包之内的application.properties和yaml配置内容
- 在应用@Configuration配置类中,用@PropertySource注解声明的属性文件
- 应用默认属性,SpringApplication.setDefaultPrope