SpringBoot 配置的优先级
1. 配置文件
配置文件优先级排名(从高到低):
- properties配置文件
- yml配置文件
- yaml配置文件
注意事项:虽然SpringBoot支持多种格式配置文件,但是在项目开发时,推荐统一使用一种格式的配置。(yml是主流)
2. 系统属性和命令行参数
在SpringBoot项目当中除了以上3种配置文件外,SpringBoot为了增强程序的扩展性,除了支持配置文件的配置方式以外,还支持另外两种常见的配置方式:
-
Java系统属性配置 (格式: -Dkey=value)
1
-Dserver.port=9000
-
命令行参数 (格式:–key=value)
1
--server.port=10010
思考:如果项目已经打包上线了,这个时候我们又如何来设置Java系统属性和命令行参数呢?
1 | java [-Dserver.port=9000] -jar XXXXX.jar [--server.port=10010] |
3. 总结
在SpringBoot项目当中,常见的属性配置方式有5种: 3种配置文件,加上2种外部属性的配置(Java系统属性、命令行参数),优先级从高到低:
- 命令行参数(–xxx=xxx)
- java系统属性(-Dxxx=xxx)
- application.properties
- application.yml
- application.yaml(忽略)
评论