发布时间:2024-01-19 18:30
我们在启动 Spring Boot 项目时会在控制台打印如下内容(logo 和版本信息):
. ____ _ __ _ _
/\\\\ / ___\'_ __ _ _(_)_ __ __ _ \\ \\ \\ \\
( ( )\\___ | \'_ | \'_| | \'_ \\/ _` | \\ \\ \\ \\
\\\\/ ___)| |_)| | | | | || (_| | ) ) ) )
\' |____| .__|_| |_|_| |_\\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.6)
通过如下链接可以生成自己项目想要的 ASCII 艺术字
如下生成 banner 字符
To My Love!
-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-
__ __ __ __
.*. /~ .~\\ /~ ~\\ /~ .~\\ /~ ~\\
*** \' `\\/\' * \' `\\/\' *
V ( .*)( . *)
/\\|/\\ \\ Ming . *./ \\ Yue . *./
| `\\ . . .*/\' `\\ . . .*/\' .*.
| `\\ * .*. */\' _ _ `\\ * .*. */\' ***
`\\ * */\' ( `\\/\'*) `\\ * */\' V
`\\/\' \\ */\' `\\/\' /\\|/\\
`\\/\' |
--+++==##<<{{******** Ming Yue ********}}>>##==++--
项目的 resources 资源目录下创建
banner.txt
文件。例如:把上面生成的banner
替换进去
再次启动项目,打印如上面 banner 字符即可。此时我们发现对应的 Spring Boot 的一些版本信息没有了,如果还想要,可以添加。
追加 Spring Boot 版本信息等
追加配置文件
application.properties
中定义的变量
app.author=Strive
最终文件如下,再次启动项目查看打印
To My Love!
-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-
__ __ __ __
.*. /~ .~\\ /~ ~\\ /~ .~\\ /~ ~\\
*** \' `\\/\' * \' `\\/\' *
V ( .*)( . *)
/\\|/\\ \\ Ming . *./ \\ Yue . *./
| `\\ . . .*/\' `\\ . . .*/\' .*.
| `\\ * .*. */\' _ _ `\\ * .*. */\' ***
`\\ * */\' ( `\\/\'*) `\\ * */\' V
`\\/\' \\ */\' `\\/\' /\\|/\\
`\\/\' |
--+++==##<<{{******** Ming Yue ********}}>>##==++--
:: Spring Boot :: (${spring-boot.version})
--by ${app.author}
打印如下:
To My Love!
-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-
__ __ __ __
.*. /~ .~\\ /~ ~\\ /~ .~\\ /~ ~\\
*** \' `\\/\' * \' `\\/\' *
V ( .*)( . *)
/\\|/\\ \\ Ming . *./ \\ Yue . *./
| `\\ . . .*/\' `\\ . . .*/\' .*.
| `\\ * .*. */\' _ _ `\\ * .*. */\' ***
`\\ * */\' ( `\\/\'*) `\\ * */\' V
`\\/\' \\ */\' `\\/\' /\\|/\\
`\\/\' |
--+++==##<<{{******** Ming Yue ********}}>>##==++--
:: Spring Boot :: (2.6.6)
--by Strive
Banner
接口专门实现这个操作。要想自定义打印 banner ,只要自定义一个类实现这个接口,重写printBanner
方法进行打印即可。Springboot 项目启动时,会创建我们的实现类对象,并调用对象的printBanner
方法。
package org.springframework.boot;
import java.io.PrintStream;
import org.springframework.core.env.Environment;
@FunctionalInterface
public interface Banner {
void printBanner(Environment environment, Class<?> sourceClass, PrintStream out);
public static enum Mode {
OFF, // 关闭 banner 打印
CONSOLE, // 打印 banner 到 控制台
LOG; // 打印 banner 到日志文件
private Mode() {
}
}
}
printBanner
默认有三个实现:
redis配置mysql缓存_redis作为mysql的缓存服务器(读写分离) (转)
重磅!原清华副校长任职南科大校长:他考研三次,读博七年,想做科研人偶像...
apache flink目录遍历漏洞(CVE-2020-17518复现)
【历史上的今天】5 月 12 日:第一台可编程机电子计算机诞生;硅谷先驱出生;饭否上线
回顾Microsoft Build 2015 开发者大会内容
2021-12-30大数据学习日志——Hadoop离线阶段——HDFS
基于WEB的网上购物系统的设计与实现(附:源码 论文 sql文件)
Jetson Xavier NX 配置(五)—— Yolo5+TensorRT加速的pytorch环境配置