SpringBoot 配置的优先级

Parker

1. 配置文件

配置文件优先级排名(从高到低):

  1. properties配置文件
  2. yml配置文件
  3. yaml配置文件

注意事项:虽然SpringBoot支持多种格式配置文件,但是在项目开发时,推荐统一使用一种格式的配置。(yml是主流)

2. 系统属性和命令行参数

在SpringBoot项目当中除了以上3种配置文件外,SpringBoot为了增强程序的扩展性,除了支持配置文件的配置方式以外,还支持另外两种常见的配置方式:

  1. Java系统属性配置 (格式: -Dkey=value)

    1
    -Dserver.port=9000
  2. 命令行参数 (格式:–key=value)

    1
    --server.port=10010

思考:如果项目已经打包上线了,这个时候我们又如何来设置Java系统属性和命令行参数呢?

1
java [-Dserver.port=9000] -jar XXXXX.jar [--server.port=10010]

3. 总结

在SpringBoot项目当中,常见的属性配置方式有5种: 3种配置文件,加上2种外部属性的配置(Java系统属性、命令行参数),优先级从高到低:

  1. 命令行参数(–xxx=xxx)
  2. java系统属性(-Dxxx=xxx)
  3. application.properties
  4. application.yml
  5. application.yaml(忽略)
评论
此页目录
SpringBoot 配置的优先级