欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot自定義Banner使用詳解

 更新時(shí)間:2024年01月02日 10:17:21   作者:pcdd  
這篇文章主要介紹了SpringBoot自定義Banner使用詳解,啟動(dòng) Spring Boot 時(shí),幾乎總是能在控制臺(tái)上方看到如下橫幅,這個(gè)也叫字符畫(huà)、英文ASCII藝術(shù)字,這就是banner,我們來(lái)看一下如何使用,需要的朋友可以參考下

1. 什么是 Banner

啟動(dòng) Spring Boot 時(shí),幾乎總是能在控制臺(tái)上方看到如下橫幅,這個(gè)也叫字符畫(huà)、英文ASCII藝術(shù)字

在這里插入圖片描述

2. 如何修改 Banner

默認(rèn)情況下,只需在 resources 根目錄(準(zhǔn)確說(shuō)是 classpath)下新建一個(gè) banner.txt 文件,內(nèi)容即為 Banner

在這里插入圖片描述

在 banner.txt 文件中,可以使用可用的任何鍵 Environment 以及以下任何占位符

VariableDescription
${application.version}應(yīng)用程序的版本號(hào),例如1.0
${application.formatted-version}用括號(hào)括起來(lái)并以 v 為前綴,例如(v1.0)
${spring-boot.version}正在使用的 Spring Boot 版本。例如3.0.5
${spring-boot.formatted-version}同理,(v3.0.5)

3. IDEA 中演示

banner.txt 內(nèi)容如下,使用一個(gè)經(jīng)典的佛祖保佑 Banner,并演示占位符的使用

${spring-boot.formatted-version}
————————————————————————————————————————————————————————————————————
//                          _ooOoo_                               //
//                         o8888888o                              //
//                         88" . "88                              //
//                         (| ^_^ |)                              //
//                         O\  =  /O                              //
//                      ____/`---'\____                           //
//                    .'  \\|     |//  `.                         //
//                   /  \\|||  :  |||//  \                        //
//                  /  _||||| -:- |||||-  \                       //
//                  |   | \\\  -  /// |   |                       //
//                  | \_|  ''\---/''  |   |                       //
//                  \  .-\__  `-`  ___/-. /                       //
//                ___`. .'  /--.--\  `. . ___                     //
//              ."" '<  `.___\_<|>_/___.'  >'"".                  //
//            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
//            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
//      ========`-.____`-.___\_____/___.-`____.-'========         //
//                           `=---='                              //
//      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
//            佛祖保佑       永不宕機(jī)     永無(wú)BUG                    //
————————————————————————————————————————————————————————————————————

運(yùn)行如下,符合預(yù)期

在這里插入圖片描述

4. 快速生成 Banner

對(duì)于復(fù)雜的 Banner(譬如上面的佛祖),手打顯然是很浪費(fèi)時(shí)間精力的,通常會(huì)借助一些 Banner 生成工具快速生成

推薦一個(gè) Banner 在線生成工具

可以將輸入的文本轉(zhuǎn)換為 Banner,并且有多種字體可選

5. 指定 banner.txt 的位置

上面提到默認(rèn)情況下,banner.txt 必須放在 classpath(resources 根目錄 )下方可生效,假設(shè)現(xiàn)在需要放在 resources/static 目錄下,在 application.yml 添加如下配置項(xiàng)即可

spring:
  banner:
  	# 或者 static/banner.txt
    location: classpath:static/banner.txt

需要說(shuō)明的是,在沒(méi)有顯式設(shè)置上述配置項(xiàng)時(shí),Banner 文件只能為 banner.txt;顯式設(shè)置后,Banner 文件名就可以為 xxx.txt

6. 在 Spring Boot 2 中的說(shuō)明

6.1 圖片生成 Banner

在 3.0.x 的版本中,Banner 僅能通過(guò)文本文件(banner.txt)的方式設(shè)置,但在 2 的版本中,除了文本文件,還可以通過(guò)圖片的方式設(shè)置,查看 spring.banner 下的配置項(xiàng)就可以發(fā)現(xiàn)

![在這里插入圖片描述](https://img-blog.csdnimg.cn/96342edf82fa440aaae959be2bd768ee.jpg

通過(guò)配置項(xiàng) spring.banner.image.location 的默認(rèn)值可以看出,只需在 classpath 下放入一個(gè) banner.gif 圖片即可,經(jīng)過(guò)測(cè)試,除了 gif 格式的圖片,jpg、jpg 也能被識(shí)別,實(shí)際效果就是將圖片轉(zhuǎn)換為字符畫(huà)

以下圖為例(盒馬.jpg)

盒馬.jpg

spring:
  banner:
    image:
      location: static/盒馬.jpg
      width: 38

由于默認(rèn)寬度(76)下在控制臺(tái)中生成的Banner過(guò)大,不便截圖,故此處指定了 width 屬性

生成效果:

在這里插入圖片描述

可以看出,生成的 Banner 和原圖十分相似,甚至連顏色都還原了(用了某種算法)

6.2 增強(qiáng)顯示效果

還可以進(jìn)一步增強(qiáng)顯示效果,通過(guò)設(shè)置 spring.banner.image.pixelmode,將渲染圖像時(shí)使用的像素模式由默認(rèn)的 text 模式改為 block 模式

spring:
  banner:
    image:
      location: static/盒馬.jpg
      width: 38
      pixelmode: block

生成效果:

在這里插入圖片描述

6.3 更多配置項(xiàng)

至于 spring.banner.image 的其他屬性不再逐一演示,因?yàn)槭趾?jiǎn)單,參照文檔一試便知,附上

在這里插入圖片描述

遺憾的是,在 Spring Boot 3 中有關(guān) spring.banner.image.* 的配置項(xiàng)均已棄用,該功能已被剔除,僅支持文本文件的方式生成 Banner

在這里插入圖片描述

7. 補(bǔ)充

在 2 版本中,可以同時(shí)指定文本文件和圖片生成 Banner。

若同時(shí)指定,控制臺(tái) Banner 打印順序?yàn)椋何谋疚募?、圖片

到此這篇關(guān)于SpringBoot自定義Banner使用詳解的文章就介紹到這了,更多相關(guān)SpringBoot自定義Banner內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mybatis報(bào)錯(cuò)?resultMapException的解決

    mybatis報(bào)錯(cuò)?resultMapException的解決

    這篇文章主要介紹了mybatis報(bào)錯(cuò)?resultMapException的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Java編程中的條件判斷之if語(yǔ)句的用法詳解

    Java編程中的條件判斷之if語(yǔ)句的用法詳解

    這篇文章主要介紹了Java編程中的條件判斷之if語(yǔ)句的用法詳解,是Java入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-11-11
  • 淺談Java中Unicode的編碼和實(shí)現(xiàn)

    淺談Java中Unicode的編碼和實(shí)現(xiàn)

    這篇文章向大家介紹了Java編程中Unicode編碼及實(shí)現(xiàn)的相關(guān)內(nèi)容,列舉了幾個(gè)字符不同表達(dá)式的比較,以及Unicode平面映射的知識(shí),具有一點(diǎn)點(diǎn)參考價(jià)值,需要的朋友可以了解下。
    2017-10-10
  • Java使用lambda表達(dá)式簡(jiǎn)化代碼的示例詳解

    Java使用lambda表達(dá)式簡(jiǎn)化代碼的示例詳解

    這篇文章主要給大家介紹了Java如何使用lambda表達(dá)式簡(jiǎn)化代碼的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-11-11
  • springboot druid mybatis多數(shù)據(jù)源配置方式

    springboot druid mybatis多數(shù)據(jù)源配置方式

    這篇文章主要介紹了springboot druid mybatis多數(shù)據(jù)源配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java實(shí)現(xiàn)讀取項(xiàng)目中文件(.json或.properties)的方法詳解

    Java實(shí)現(xiàn)讀取項(xiàng)目中文件(.json或.properties)的方法詳解

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)讀取項(xiàng)目中文件的方法,例如.json或.properties,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-04-04
  • SpringBoot SSMP 整合案例分享

    SpringBoot SSMP 整合案例分享

    這篇文章主要介紹了SpringBoot SSMP 整合案例分享,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • 基于Java 注解(Annotation)的基本概念詳解

    基于Java 注解(Annotation)的基本概念詳解

    基于Java 注解(Annotation)的基本概念詳解
    2013-04-04
  • java微信小程序步數(shù)encryptedData和開(kāi)放數(shù)據(jù)解密的實(shí)現(xiàn)

    java微信小程序步數(shù)encryptedData和開(kāi)放數(shù)據(jù)解密的實(shí)現(xiàn)

    這篇文章主要介紹了java微信小程序步數(shù)encryptedData和開(kāi)放數(shù)據(jù)解密的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 23種設(shè)計(jì)模式(6)java裝飾者模式

    23種設(shè)計(jì)模式(6)java裝飾者模式

    這篇文章主要為大家詳細(xì)介紹了23種設(shè)計(jì)模式之java裝飾者模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11

最新評(píng)論