使用Spring Boot啟動的jar包總是會顯示一個Spring的圖標:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.3.3.RELEASE)
實際上Spring Boot在這個位置,放了一個彩蛋,我們是可以自定義這個圖標的。
我們可以在resource目錄下面放入一個banner.txt
文件,Spring Boot啟動項目的時候就會優先啟動這個文件中的內容。
這里給大家推薦兩個個字符畫生成的網站,我們可以利用生成的字符串放入這個banner.txt
文件:
比如我生成一個star wars
的圖標:
_______.___________. ___ .______
/ | | / \ | _ \
| (----`---| |----` / ^ \ | |_) |
\ \ | | / /_\ \ | /
.----) | | | / _____ \ | |\ \----.
|_______/ |__| /__/ \__\ | _| `._____|
____ __ ____ ___ .______ _______.
\ \ / \ / / / \ | _ \ / |
\ \/ \/ / / ^ \ | |_) | | (----`
\ / / /_\ \ | / \ \
\ /\ / / _____ \ | |\ \----.----) |
\__/ \__/ /__/ \__\ | _| `._____|_______/
這樣啟動的時候
但是僅僅是這樣看起來並不好看,還不如原來的圖標好看呢。實際上Spring Boot為這個彩蛋提供了不少美化功能。
Spring Boot提供了一個枚舉類AnsiColor
,這個類可以控制banner.txt
中的字符顏色,而且非常容易使用。
比如我可以將字符設置成顏色:BRIGHT_YELLOW
${AnsiColor.BRIGHT_YELLOW}
_______.___________. ___ .______
/ | | / \ | _ \
| (----`---| |----` / ^ \ | |_) |
\ \ | | / /_\ \ | /
.----) | | | / _____ \ | |\ \----.
|_______/ |__| /__/ \__\ | _| `._____|
____ __ ____ ___ .______ _______.
\ \ / \ / / / \ | _ \ / |
\ \/ \/ / / ^ \ | |_) | | (----`
\ / / /_\ \ | / \ \
\ /\ / / _____ \ | |\ \----.----) |
\__/ \__/ /__/ \__\ | _| `._____|_______/
再重新啟動項目,啟動界面就會變成這個樣子:
類似 ${AnsiColor.BRIGHT_YELLOW}
這種表達式,其實可以放置多個,啟動界面上的顏色,總是會根據AnsiColor
的設置改變界面的顏色,這樣啟動的界面就會顯示多種不同的顏色了。
除了這樣美化的功能之外,啟動界面很重要的功能就是要告訴我們這個項目的一些重要信息。
${application.version} 這個是MANIFEST.MF文件中的版本號
${application.formatted-version} 這個是上面的的版本號前面加v后上括號
${spring-boot.version} 這個是springboot的版本號
${spring-boot.formatted-version}同上
把以上信息通過${}
放入banner.txt中,就會打印出項目對應的信息。
這里放一個完整的demo:
${AnsiColor.BRIGHT_YELLOW}
_______.___________. ___ .______ ____ __ ____ ___ .______ _______.
/ | | / \ | _ \ \ \ / \ / / / \ | _ \ / |
| (----`---| |----` / ^ \ | |_) | \ \/ \/ / / ^ \ | |_) | | (----`
\ \ | | / /_\ \ | / \ / / /_\ \ | / \ \
.----) | | | / _____ \ | |\ \----. \ /\ / / _____ \ | |\ \----.----) |
|_______/ |__| /__/ \__\ | _| `._____| \__/ \__/ /__/ \__\ | _| `._____|_______/
${AnsiColor.BRIGHT_BLUE}
::: Project (version:${application.version}) ::: \(^O^)/ Spring-Boot ${spring-boot.version}
啟動就會是這一個樣子: