SpringBoot 之banner原理

專案使用SpringBoot框架,啟動時控制檯輸出一串由特殊字元拼接成的單詞如下圖所示。SpringBoot底層如何實現?

SpringBoot 之banner原理

一 banner輸出配置

1 在專案resources資料夾加入名為banner。txt檔案,檔名要為banner,不能其他。

2 在專案resources資料夾加入名為banner。jpg圖片,當圖片名為其他,需要在properties配置檔案配置指定。

3 roperties配置檔案指定banner。image。location的屬性值,為連結地址。

4 當沒有指定banner輸出檔案,使用預設的字串輸出。

二 banner 原理

1 建立ResourceLoader 例項,賦值個SpringApplicationBannerPrinter建構函式。

2 透過ResourceLoader 例項載入resources資料夾下的指定名的banner檔案,獲取成功返回輸出。

SpringBoot 之banner原理

呼叫列印方法

SpringBoot 之banner原理

例項化輸出所需的例項

SpringBoot 之banner原理

獲取banner輸出資訊

SpringBoot 之banner原理

getBanner具體輸出情況

三 常見問題

1 resources資料夾下banner。txt資訊檔案,在不改動配置情況下,為何得以banner命名?從下面原始碼得知,springboot預設讀取resources資料夾下banner。txt。banner圖片輸出,也是以banner命名開始。

SpringBoot 之banner原理

2 在沒有指定banner檔案輸出下,為何也可以看到控制檯輸出banner資訊。從下面原始碼截圖可知,在其他banner配置檔案沒配的情況下,預設使用springboot自定義的字串輸出。

SpringBoot 之banner原理

SpringBoot 之banner原理