SpringBoot配置文件优先级加载顺序

配置文件优先级从高到低顺序↓

  • file:./config/ - 优先级最高(项目根路径下的config
  • file:./ - 优先级第二 -(项目根路径下)
  • classpath:/config/ - 优先级第三(项目resources/config下)
  • classpath:/ - 优先级第四(项目resources根目录)

SpringBoot项目启动会去扫面项目以上目录位置的application.ymlapplication.properties文件

以上位置的application.ymlapplication.properties遵循:

  • 高优先级配置会覆盖低优先级配置

  • 多个配置文件互补

    • 比如,两个同名文件里面有相同的配置,相同的配置会被高优先级的配置覆盖

    A配置优先级大于B配置

    1. server:
    2. port: 8080

    B配置优先级小于A配置

    1. server:
    2. port: 8081
    3. context-path: /test

    项目启动后访问地址为:http://localhost:8080/test,这就是所谓的互补


项目打包运行后可通过命令指定配置文件位置

  1. --spring.config.location=d:/application.properties
  • 实例
  1. java -jar demo-xxx.jar --spring.config.location=d:/application.properties

这对于运维来说非常方便,在不破坏原配置情况下轻松修改少量配置就可以达到想要的效果


0
0
0

添加评论

正在回复:
取消
0
0
0
0