Spring Boot配置文件加载位置
目录理论演示理论Spring Boot启动会扫描以下位置的application.properties或者application.yml文件作为Spring Boot的默认文件;文件如下:file:./config/file:./classpath:/config/classpath:./以上是按照优先级从高到低的顺序,所有位置的文件都会被...
目录
理论
Spring Boot启动会扫描以下位置的application.properties或者application.yml文件作为Spring Boot的默认文件;
文件如下:
file:./config/
file:./
classpath:/config/
classpath:./
以上是按照优先级从高到低的顺序,所有位置的文件都会被加载,高优先级配置内容会覆盖第优先级配置内容。
也可以通过配置spring.config.location来改变默认配置。
演示
如下的项目结构:
resources下的application.properties源码如下:
server.port=10086
运行截图如下:
当在内路径下存在config目录,并且有application.properties,如下结构:
config下的application.properties源码如下:
server.port=10010
运行截图如下:
内路径下创建一个config文件夹,然后进行操作,内路径config的优先级比内内路径根目录的优先级高。
当在项目根目录创建application.properties
目录结构如下:
根目录下的application.properties源码如下:
server.port=8888
运行截图如下:
在根目录下创建一个config文件夹,再里面放一个application.properties
项目目录下config文件夹里面的application.properties
server.port=12345
运行截图如下:
Spring Boot会从这4个位置全部加载主配置文件,形成互补配置!
这个互补配置和Linux环境变量差不多;
通过spring.config.location来改变默认的配置文件位置
项目打包好以后,使用命令行参数,启动项目的时候指定配置文件的新位置;指定配置文件和默认加载的这些配置文件共同其作用!互补
如下:
在C盘创建一个properties,内容如下:
server.port=7777
源码如下:
java -jar properties-0.0.1-SNAPSHOT.jar --spring.config.location=C:/application.properties
更多推荐
所有评论(0)