一:场景描述
Springboot默认开启banner,在项目启动时会在控制台默认打印spring图案。
 
 SpringBoot有一个接口org.springframework.boot.Banner实现这个操作。故我们可以实现这个接口来打印自定义banner信息,但是不推荐,因为这不是什么重要的功能,没必要,既然SpringBoot提供了这个功能,肯定为我们实现了。
二:自定义Banner
在Springboot工程的src/main/resources目录下新建banner.txt文件,将想要显示的ASCII字符复制到banner.txt文件中,启动工程即可。
 
 banner.txt文件中的内容如下:
${AnsiColor.BRIGHT_RED}
___  ___ _ _ |  \/  | | | | | | .  . |_ __ _ __   ___ | |__   ___   __| |_   _ 
| |\/| | '__| '_ \ / _ \| '_ \ / _ \ / _` | | | |
| |  | | | _| | | | (_) | |_) | (_) | (_| | |_| |
\_|  |_/_|(_)_| |_|\___/|_.__/ \___/ \__,_|\__, | __/ | |___/ ${AnsiStyle.NORMAL}${AnsiColor.CYAN}欢迎阅读,作者:${application.author}
${AnsiColor.YELLOW}
Springboot的版本号:${spring-boot.version}
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 - 12
 - 13
 
三:参数详解
${AnsiColor.BRIGHT_RED}:设置控制台输出的内容颜色
 ${application.author}:application.yml文件中自定义的配置变量
 ${spring-boot.version}:Springboot的版本号
下面介绍两个个性化制作ASCII字符和图案的网址:
 定制化ASCII字符:http://network-science.de/ascii/
 定制化ASCII图片:https://www.degraeve.com/img2txt.php
Spring提供了三个枚举类来设定字符的样式:
- AnsiColor:设置字符的前景色
 - AnsiBackground:设置字符的背景色
 - AnsiStyle:控制加粗、斜体、下划线等等。
 
四:Banner加载顺序
在Classpath下依次寻找banner.gif,banner.jpg,banner.png,banner.txt文件,先找到谁就用谁。若都没有找到的话, 用默认的SpringBootBanner。
五:关闭Banner图案
- 在启动类中进行关闭
 
package com.nobody;
import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
	public static void main(String[] args) {
		SpringApplication app = new SpringApplication(Application.class);
		app.setBannerMode(Banner.Mode.OFF);
		app.run(args);
	}
}
  
 - 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 - 11
 - 12
 - 13
 - 14
 - 15
 - 16
 - 17
 
- 配置文件中设置关闭
 
spring:
  main: banner-mode: off
  
 - 1
 - 2
 - 3
 
如果启动类跟配置文件中都配置了对banner开关的设置,配置文件中设置的banner开关会优先于启动类中设置的开关。
文章来源: javalib.blog.csdn.net,作者:陈皮的JavaLib,版权归原作者所有,如需转载,请联系作者。
原文链接:javalib.blog.csdn.net/article/details/105747546