springboot属性加载顺序

优先级按照顺序由高到低,数字越小优先级越高

  1. 在命令行中传入的参数。类似于java -jar -Dspring.profiles.active之类。
  2. SPRING_APPLICATION_JSON属性,该属性以JSON形式存储在系统环境变量中。
  3. java:comp/env中JNDI属性。
  4. Java的系统的属性,可通过System.getProperties()获得相关内容。
  5. 操作系统中的环境变量。
  6. 通过random.*配置的随机属性。
  7. 位于当前应用jar包外,针对不同{profile}环境的配置文件内容。
  8. 位于当前应用jar包内,针对不同{profile}环境的配置文件内容。
  9. 位于当前应用jar包外的application.properties或application.yml配置内容。
  10. 位于当前应用jar包内的application.properties或application.yml配置内容。
  11. 在@Configuration注解修改的类中,通过@PropertySource注解定义的属性。
  12. 应用默认属性,使用SpringApplication.setDefaultProperties定义的属性内容。

注:当发现自己使用springboot时,使用到的属性与自己希望得到的属性值由差异时,从以上加载顺序中去查看相关属性内容。

猜你喜欢

转载自blog.csdn.net/zhangwei408089826/article/details/81981402