SpringBoot中的自定義Banner詳細解析
一、自定義banner
Spring Boot支持圖片和文字兩種banner樣式,而圖片會被轉(zhuǎn)化為ASCII字符畫展示。

1、自定義文字方式

這里可以有兩種方式:
1)通過在配置文件中指定文件
static final String BANNER_LOCATION_PROPERTY = "spring.banner.location";
1> 在yaml文件中做如下配置:
spring:
banner:
location: banner_test.txt2> 在resources目錄下新建banner_test.txt文件:

3> 控制臺輸出如下:

2)默認讀取resources目錄下的banner.txt文件
static final String DEFAULT_BANNER_LOCATION = "banner.txt";
1> 只需要在resources目錄下新建一個 banner.txt 文件:

2> 控制臺輸出如下:

2、自定義圖片方式

static final String BANNER_IMAGE_LOCATION_PROPERTY = "spring.banner.image.location";
支持的圖片類型:
static final String[] IMAGE_EXTENSION = { "gif", "jpg", "" };1> 在yaml文件中做如下配置:
spring:
banner:
image:
location: xiaoniao.jpg
2> 在resources目錄下添加xiaoniao.jpg圖片:

3> 控制臺輸出如下:

WARN 7716 — [ main] org.springframework.boot.ImageBanner : Image banner not printable: class path resource [xiaoniao.jpg] (class java.lang.IllegalStateException: ‘Unable to read image banner source’)
可以看到已經(jīng)是使用了圖片打印banner,但是打印不出來。
再換個圖片試試:

輸出如下:

這個圖片可以用,但是感覺像亂碼了!這就是上面提到的圖片會被轉(zhuǎn)化為ASCII字符畫展示。所以不要用圖片打印banner。
二、多個 banner
可以同時打印自定義圖片、自定義文本banner:
比如在resources目錄下添加 banner.txt 的同時,通過spring.banner.image.location指定打印圖片的路徑。

示例輸出如下:

還有一種取巧的方式,除了打印系統(tǒng)自帶的banner外,我們還可以自定義banner。 定義一個配置類,在其構(gòu)造函數(shù)中打印banner:

到此這篇關(guān)于SpringBoot中的自定義Banner詳細解析的文章就介紹到這了,更多相關(guān)自定義Banner內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于logback.xml和logback-spring.xml的區(qū)別及說明
這篇文章主要介紹了關(guān)于logback.xml和logback-spring.xml的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06
一文教你利用Stream?API批量Mock數(shù)據(jù)的方法
在日常開發(fā)的過程中我們經(jīng)常會遇到需要mock一些數(shù)據(jù)的場景,比如說?mock?一些接口的返回或者說?mock?一些測試消息用于隊列生產(chǎn)者發(fā)送消息。本文將教你如何通過?Stream?API?批量?Mock?數(shù)據(jù),需要的可以參考一下2022-09-09
java開源調(diào)度如何給xxljob加k8s執(zhí)行器
這篇文章主要介紹了java開源調(diào)度如何給xxljob加一個k8s執(zhí)行器,?xxljob?在設(shè)計上,抽象出了執(zhí)行器的接口,所以實現(xiàn)一個語言的執(zhí)行器并不復雜,這里主要探索下,如何利用k8s的pod?的能力,使用?xxljob?調(diào)度?pod?運行,實現(xiàn)一個通用的和語言無關(guān)的執(zhí)行器2022-02-02
Mybatis不啟動項目直接測試Mapper的實現(xiàn)方法
在項目開發(fā)中,測試單個Mybatis Mapper方法通常需要啟動整個SpringBoot項目,消耗大量時間,本文介紹通過Main方法和Mybatis配置類,快速測試Mapper功能,無需啟動整個項目,這方法使用AnnotationConfigApplicationContext容器2024-09-09

