8.spring配置文件的加载位置

4处加载位置如图所示:若存在多个配置文件,springboot会全部加载,相同配置,高优先级会覆盖掉低优先级,形成互补配置

2.我们还可以使用spring.config.location来改变默认的配置文件路径
项目打包好后,我们可以使用命令行参数的形式,启动项目指定配置文件的新路径,指定的配置文件和默认加载的那些配置文件共同起作用!

java -jar jar包名称  --spring.config.location=配置文件新路径
这个指定的配置文件优先级最高,常用于运维!
springboot外部配置的加载顺序
springboot也可以从以下的位置加载配置,优先级从高到底,高优先级的配置会覆盖低优先级的配置,所有的配置会形成互补配置
1.命令行参数:多个配置用空格分开
    java -jar jar包名称 --server.port=8087 --server.contex-path=/hello
2.来自java:comp/env的NDI属性
3.java系统属性(system.getProperties()))
4.操作系统环境变量
5.RandomValuePropertySource的random.*属性值

将外部配置文件和jar包放在同一目录:直接可使用java -jar jar包形式启动,并加载配置文件内容!
6.jar包外部的application-{profile}.properties或application.yml(带spring.profile)配置文件
7.jar包内部的application-{profile}.properties或application.yml(带spring.profile)配置文件
8.jar包外部的application-{profile}.properties或application.yml(不带spring.profile)配置文件
9.jar包内部的application-{profile}.properties或application.yml(不带spring.profile)配置文件


10.@Configuration注解类上的@propertySource
11.使用SpringApplication.setDefaultProperties指定的默认属性

 

posted @ 2022-05-09 21:07  努力的达子  阅读(549)  评论(0编辑  收藏  举报