启动时打印的标语可以通过向类路径中添加banner.txt文件或者通过将banner.location设置为该文件的位置来更改。如果文件有特殊的编码,您可以设置banner.charset(默认是UTF-8)。除了文本文件以外,您还可以将banner.gif、banner.jpg或banner.png图像文件添加到类路径中,或者设置banner.image.location属性。图像会被转换为ASCII艺术字并打印在所有文本标语的上方。
在banner.txt文件内,您可以使用以下任何占位符:
Table 23.1. Banner variables
| 变量 | 描述 |
|---|---|
${application.version} |
在MANIFEST.MF中声明的应用程序的版本号。例如Implementation-Version: 1.0打印为1.0。 |
${application.formatted-version} |
在MANIFEST.MF中声明的格式化后用于显示(用括号扩起并以v为前缀)的应用程序的版本号。例如(v1.0) |
${spring-boot.version} |
您使用的Spring Boot的版本号。例如1.5.7.RELEASE。 |
${spring-boot.formatted-version} |
格式化后用于显示(用括号扩起并以v为前缀)的您使用的Spring Boot的版本号。例如(v1.5.7.RELEASE)。 |
${Ansi.NAME}(或${AnsiColor.NAME}、 |
|
${AnsiBackground.NAME}、${AnsiStyle.NAME}) |
其中NAME是ANSI转义代码的名称。详细信息请参阅AnsiPropertySource。 |
${application.title} |
在MANIFEST.MF中声明的您的应用程序的标题。例如Implementation-Title: MyApp被打印为MyApp。 |
如果想以编程的方式生成标语,您可以使用
SpringApplication.setBanner(…)方法。使用org.springframework.boot.Banner接口并实现您自己的printBanner()方法。
您还可以使用spring.main.banner-mode属性来确定标语是被打印到System.out(console)、使用已配置的logger(log)或是根本不打印(off)。
被打印的标语将以springBootBanner名称注册为单例bean。
YAML将
off映射为false,因此如果要在程序中禁用标语请确保添加引号。
spring:
main:
banner-mode: "off"