我们在启动Spring Boot程序时,有SpringBoot的Banner信息,那么如何自定义成自己项目的信息呢? @pdai
什么是Banner
我们在启动Spring Boot程序时,有如下Banner信息:
那么如何自定义成自己项目的名称呢?
如何更改Banner
更改Banner有如下几种方式:
- banner.txt配置(最常用)
在application.yml中添加配置
spring:
banner:
charset: UTF-8
location: classpath:banner.txt
在resource下创建banner.txt,内容自定义:
----welcome----
https://pdai.tech
---------------
修改后,重启的app的效果
- SpringApplication启动时设置参数
SpringApplication application = new SpringApplication(App.class);
/**
* Banner.Mode.OFF:关闭;
* Banner.Mode.CONSOLE:控制台输出,默认方式;
* Banner.Mode.LOG:日志输出方式;
*/
application.setBannerMode(Banner.Mode.OFF); // here
application.run(args);
SpringApplication还可以设置自定义的Banner的接口类
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4SGYeFwx-1657363965931)(https://pdai.tech/_images/spring/springboot/springboot-hello-banner-6.png)]
文字Banner的设计
如何设计上面的文字呢?
一些设计Banner的网站
可以通过这个网站进行设计:patorjk Banner
比如:
我们修改banner.txt, 运行的效果如下
IDEA中Banner的插件
IDEA中也有插件,不过没有预览功能
其它工具
http://www.network-science.de/ascii/
http://www.degraeve.com/img2txt.php
http://www.bootschool.net/ascii
Banner中其它配置信息
除了文件信息,还有哪些信息可以配置呢?比如Spring默认还带有SpringBoot当前的版本号信息。
在banner.txt中,还可以进行一些设置:
# springboot的版本号
${spring-boot.version}
# springboot的版本号前面加v后上括号
${spring-boot.formatted-version}
# MANIFEST.MF文件中的版本号
${application.version}
# MANIFEST.MF文件的版本号前面加v后上括号
${application.formatted-version}
# MANIFEST.MF文件中的程序名称
${application.title}
# ANSI样色/样式等
${Ansi.NAME} (or ${AnsiColor.NAME}, ${AnsiBackground.NAME}, ${AnsiStyle.NAME})
简单的测试如下(注意必须打包出Jar, 才会生成resources/META-INF/MANIFEST.MF):
动画Banner的设计
那我能不能设置动态的Banner呢?比如一个图片?
SpringBoot2是支持图片形式的Banner,
spring:
main:
banner-mode: console