SpringBoot八:配置加载位置与加载顺序(了解)
配置加载位置与加载顺序
SpringBoot启动会扫描以下位置的application.properties或者application.yml文件作为SpringBoot的默认配置文件
SpringBoot会从四个位置全部加载主配置文件;互补配置;如果高优先级有,则使用高优先级配置,否则则使用低优先级的配置,也就是说高优先级的配置会覆盖低优先级的配置
优先级从高到低,表
-file:./config/ | 项目根目录config文件夹下 |
-file:./ | 项目根目录下 |
-classpath:/config/ | resouces的config路径下 |
-classpath:/ | resources路径下 |
优先级1最大,4最小,个人感觉用第三种方式最好,图
此外,我们还可以通过 spring.config.location来改变默认的配置文件位置
项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置,指定配置文件和默认加载的顺序,让这些配置文件共同起作用形成互补配置
外部配置文件加载顺序
1、命令行参数指定修改默认的配置文件
2、由jar包外向包内进行寻找,优先加载带profile
3、再来加载不带profile