Spring Boot 自定义 banner

1. 自定义banner

Spring Boot 项目启动时打印的横幅可以通过在 classpath 中添加 banner.txt 文件或将 spring.banner.location 属性设置为此类文件的位置来更改默认的 banner。如果该文件的编码不是 UTF-8,你可以设置spring.banner.charset 属性。除了文本文件外,你还可以在 classpath 中添加 banner.gif、banner.jpg 或banner.png 图像文件,或者设置 spring.banner.image.location 等属性。图片被转换为 ASCII 艺术形式展示,并在所有文本 banner 之前打印。

在自定义 banner.txt 文件中,你可以使用以下任何一个占位符。

变量描述
${application.version}你的应用程序的版本号,如 MANIFEST.MF 中所声明的。例如,Implementation-Version:1.0被打印为1.0
${application.formatted-version}你的应用程序的版本号,正如在MANIFEST.MF中声明的那样,并以格式化的方式显示(用括号括起来,以v为前缀)。例如(v1.0)
${spring-boot.version}你正在使用的 Spring Boot 的版本,例如,2.6.1
${spring-boot.formatted-version}你正在使用的 Spring Boot 的版本,格式化显示(用括号括起来,以v为前缀)。例如(v2.6.1)
${Ansi.NAME} (or ${AnsiColor.NAME}, ${AnsiBackground.NAME}, ${AnsiStyle.NAME})其中NAME是一个 ANSI 转义代码的名称,详见 AnsiPropertySource
${application.title}你的应用程序的标题,如MANFEST.MF 中声明的那样。例如,Implementation-Title: MyApp 被打印为 MyApp

如果你想以编程方式生成一个banner,可以使用 SpringApplication.setBanner(…)方法。使用 org.springframework.boot.Banner接口并实现你自己的 printBanner() 方法。

你还可以使用 spring.main.banner-mode 属性来决定banner是否必须打印在System.out上(console),发送至配置的 logger(log),或者关闭(off)。

打印的banner被注册为一个单实例的Bean,名称如下:springBootBanner。

a p p l i c a t i o n . v e r s i o n 和 {application.version}和 application.version{application.formatted-version}属性仅在你使用Spring Boot启动器时可用。如果你运行一个未打包的jar并使用java -cp 启动它,这些值将不会被解决。

这就是为什么我们建议你总是使用java.org.springframework.boot.lader.JarLauncher来启动未打包的jar。这将在构建classpath和启动你的应用程序之前初始化application.*banner变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值