1、简介
SpringBoot启动会扫描以下位置的application.properties或者application.yml文件作为SpringBoot的默认配置文件
-
优先级由高到低,高优先级的配置会覆盖低优先级的配置
-
SpringBoot会从这四个位置全部加载主配置文件,各个配置文件是采用互补配置的关系进行加载
2、改变默认的配置文件位置
- 可以通过
spring.config.location
来改变默认的配置文件位置(必须在项目打包后才能使用此功能)
private Set<String> getSearchLocations() {
if (this.environment.containsProperty(CONFIG_LOCATION_PROPERTY)) {
return getSearchLocations(CONFIG_LOCATION_PROPERTY);
}
Set<String> locations = getSearchLocations(CONFIG_ADDITIONAL_LOCATION_PROPERTY);
locations.addAll(
asResolvedSet(ConfigFileApplicationListener.this.searchLocations, DEFAULT_SEARCH_LOCATIONS));
return locations;
}
-
项目打包好以后,可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位置
-
指定配置文件和默认加载的这些配置文件共同起作用形成互补配置
-
java -jar spring-boot-config-location.jar –spring.config.location=C:/application.propoerties