這篇文章的開始先給大家看一個圖片 我們在啟動 SpringBoot 時向拆,控制臺會打印 SpringBoot Logo 以及版本信息瘫镇。默認的banner是spring的字樣戏阅,看多了覺得挺單調(diào)的阅嘶,Spring Boot為我們提供了自定義banner的功能西轩。
自定義banner只需要在resource下新建一個banner.txt文件悬蔽,將我們需要的banner字樣放進去扯躺,啟動的時候就會去讀取使用這個文本文件中的banner。
比如
${AnsiColor.BRIGHT_CYAN}
? ? ? ? ? ? ? ? ? _ooOoo_
? ? ? ? ? ? ? ? ? o8888888o
? ? ? ? ? ? ? ? ? 88" . "88
? ? ? ? ? ? ? ? ? (| -_- |)
? ? ? ? ? ? ? ? ? O\? =? /O
? ? ? ? ? ? ? ____/`---'\____
? ? ? ? ? ? .'? \\|? ? |//? `.
? ? ? ? ? ? /? \\|||? :? |||//? \
? ? ? ? ? /? _||||| -:- |||||-? \
? ? ? ? ? |? | \\\? -? /// |? |
? ? ? ? ? | \_|? ''\---/''? |? |
? ? ? ? ? \? .-\__? `-`? ___/-. /
? ? ? ? ___`. .'? /--.--\? `. . __
? ? ? ."" '<? `.___\_<|>_/___.'? >'"".
? ? | | :? `- \`.;`\ _ /`;.`/ - ` : | |
? ? \? \ `-.? \_ __\ /__ _/? .-` /? /
======`-.____`-.___\_____/___.-`____.-'======
? ? ? ? ? ? ? ? ? `=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
? ? ? 佛祖保佑? ? ? 永不宕機? ? 永無BUG
控制banner樣式
Spring提供了三個枚舉類來設定字符的顏色蝎困,分別是:
AnsiColor: 用來設定字符的前景色
AnsiBackground: 用來設定字符的背景色
AnsiStyle: 用來控制加粗录语、斜體、下劃線等等禾乘。
使用${AnsiFoo.Bar}來指定樣式澎埠,當指定樣式的時候會有提示的:
效果
顯示應用信息
除了上面的指定樣式之外,還可以顯示一些與應用相關的版本信息:
${application.version}? 與MANIFEST.MF文件中相同的版本號始藕,比如1.5.4.RELEASE
${application.formatted-version}格式化過的版本號就是加個v然后用括號包起來蒲稳,比如(v1.5.4.RELEASE)
${application.title}
${spring-boot.version} Spring Boot的版本
${spring-boot.formatted-version} 格式化過的版本
控制banner是否開啟氮趋,輸出位置
設置banner mode為OFF關閉banner:
package com.lun.hsmfboot;
import org.springframework.boot.Banner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.core.SpringVersion;
@SpringBootApplication
public class HsmfBootApplication {
? ? public static void main(String[] args) {
? ? ? ? SpringApplication springApplication = new SpringApplication(HsmfBootApplication.class);
? ? ? ? springApplication.setBannerMode(Banner.Mode.CONSOLE);
? ? ? ? springApplication.setMainApplicationClass(SpringVersion.class);
? ? ? ? springApplication.run(args);
? ? }
}
生成工具
如果讓我們手工的來編輯這些字符畫,顯然是一件非常困難的差事江耀。所以剩胁,我們可以借助下面這些工具,輕松地根據(jù)文字或圖片來生成用于Banner輸出的字符畫
http://patorjk.com/software/taag
http://www.network-science.de/ascii/