SpringBoot加载配置路径

配置文件加载位置

SpringBoot 会从application.properties或者application.yml中加载配置信息。这两个文件的名称是固定的。这两个文件是SpringBoot的默认配置文件。

配置文件的优先级

(当前项目路径)file:../config/
(当前项目路径)file:../
(类路径)classpath:/config/
(类路径)classpath:/
优先级:高到低。有先读取优先级高的配置文件的配置信息。
如无意外,一般都把配置文件放在classpath路径下。

可以通过spring.config.location来改变默认配置文件。(通过命令行参数来实现,将指定位置的配置文件与默认配置文件组成互补配置)。

外部配置加载顺序

//按照优先级:从高到低覆盖
1.命令行参数
    java -jar xxxxx.jar --spring.port=xxxx(多个参数用空格分隔)
2.来自java:comp/env的JNDI
    第三方jndi属性
3.java系统属性,System类的getProperties()
    java虚拟机中的属性
4.操作系统环境变量
5.RandomValuePropertySource配置的random.*属性值

(以下,优先加载带profile的)
6.jar包外部的application-{proile}.properties或者application.yml(带有srping.profile)配置文件
7.jar包内部的application-{proile}.properties或者application.yml(带有srping.profile)配置文件
8.jar包外部的application-{proile}.properties或者application.yml(不带有srping.profile)配置文件
9.jar包内部的application-{proile}.properties或者application.yml(不带有srping.profile)配置文件
10.被@Configuration注解标注类上的PropertySource
11.通过SpringApplication.setDefaultProperties指定的默认属性。

前往官方参考文档

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章