View on GitHub

spring-boot-in-action

Spring Boot 实战笔记

通过属性文件外置配置

Spring Boot Banner

# 打印到控制台
spring.main.banner-mode=console
# 打印到日志文件
spring.main.banner-mode=log
# 不打印
spring.main.banner-mode=off

禁用 Spring Boot Banner

方法一:命令行参数指定

java -jar readinglist-ch03.jar --spring.main.banner-mode=off

方法二:修改application.properties

在 application.properties 文件中新增:

spring.main.banner-mode=off

方法三:修改application.yml

在 application.yml 文件中新增:

spring:
  main:
    banner-mode: 'off'

【注】配置 banner-mode: off会报错,这是因为在 yaml/yml中,off 会被转为 false,所以 off 配置必须加单引号。

https://github.com/spring-projects/spring-boot/issues/4600

方法四:设置环境变量

如果你用的是bash或者zsh,可以用 export 命令:

export spring_main_show_banner=false

请注意,这里用的是下划线而不是点和横杠,这是对环境变量名称的要求。

属性设置途径

Spring Boot 属性设置途径优先级:

  1. 命令行参数

  2. java:comp/env 里的JNDI属性

  3. JVM 系统属性

  4. 操作系统环境变量

  5. 随机生成的带 random.* 前缀的属性(在设置其他属性时,可以引用它们,比如 ${random.long}

  6. 应用程序以外的application.properties或者appliaction.yml文件

  7. 打包在应用程序内的application.properties或者appliaction.yml文件

  8. 通过 @PropertySource 标注的属性源

  9. 默认属性

application.propertiesapplication.yml 文件能放在以下四个位置优先级:

  1. 外置,在相对于应用程序运行目录的 /config 子目录里。
  2. 外置,在应用程序运行的目录里。
  3. 内置,在config包内。
  4. 内置,在Classpath根目录。