优先级按照顺序由高到低,数字越小优先级越高
- 在命令行中传入的参数。类似于java -jar -Dspring.profiles.active之类。
- SPRING_APPLICATION_JSON属性,该属性以JSON形式存储在系统环境变量中。
- java:comp/env中JNDI属性。
- Java的系统的属性,可通过System.getProperties()获得相关内容。
- 操作系统中的环境变量。
- 通过random.*配置的随机属性。
- 位于当前应用jar包外,针对不同{profile}环境的配置文件内容。
- 位于当前应用jar包内,针对不同{profile}环境的配置文件内容。
- 位于当前应用jar包外的application.properties或application.yml配置内容。
- 位于当前应用jar包内的application.properties或application.yml配置内容。
- 在@Configuration注解修改的类中,通过@PropertySource注解定义的属性。
- 应用默认属性,使用SpringApplication.setDefaultProperties定义的属性内容。
注:当发现自己使用springboot时,使用到的属性与自己希望得到的属性值由差异时,从以上加载顺序中去查看相关属性内容。