- jar 包外部的 application-{profile}.properties 或 .yml
- jar 包内部的 application-{profile}.properties 或 .yml
- jar 包外部的 application.properties 或 .yml
- jar 包内部的 application.properties 或 .yml
- 默认位置
- ./config
- ./
- CLASSPATH 中的 /config
- CLASSPATH 中的 /
- 修改名字或路径
- spring.config.name
- spring.config.location
- spring.config.additional-location
- Relaxed Binding
命名风格 | 使用范围 | 示例 |
短划线分割 | Properties 文件YAML 文件系统属性 | geektime.spring-boot.first-demo |
驼峰式 | 同上 | geektime.springBoot.firstDemo |
下划线分割 | 同上 | geektime.spring_boot.first_demo |
全大写,下划线分割 | 环境变量 | GEEKTIME_SPRINGBOOT_FIRSTDEMO |
说明:
- CLASSPATH指的是resources目录下
- 优先级由高到底,高优先级的配置会覆盖低优先级的配置;
- SpringBoot会从这四个位置全部加载主配置文件,互补配置;
- 通过spring.config.location来改变默认的配置文件位置。