转载

Spring Boot的启动彩蛋

使用Spring Boot启动的jar包总是会显示一个Spring的图标:

.   ____          _            __ _ _ /// / ___'_ __ _ _(_)_ __  __ _ / / / / ( ( )/___ | '_ | '_| | '_ // _` | / / / / ///  ___)| |_)| | | | | || (_| |  ) ) ) ) '  |____| .__|_| |_|_| |_/__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot ::        (v1.3.3.RELEASE)

实际上Spring Boot在这个位置,放了一个彩蛋,我们是可以自定义这个图标的。

我们可以在resource目录下面放入一个 banner.txt 文件,Spring Boot启动项目的时候就会优先启动这个文件中的内容。

这里给大家推荐两个个字符画生成的网站,我们可以利用生成的字符串放入这个 banner.txt 文件:

  • http://www.network-science.de/ascii/
  • http://patorjk.com/software/taag/

比如我生成一个 star wars 的图标:

     _______.___________.    ___      .______              /       |           |   /   /     |   _  /            |   (----`---|  |----`  /  ^  /    |  |_)  |            /   /       |  |      /  /_/  /   |      /         .----)   |      |  |     /  _____  /  |  |/  /----.    |_______/       |__|    /__/     /__/ | _| `._____|                                                           ____    __    ____  ___      .______          _______. /   /  /  /  /   / /   /     |   _  /        /       |  /   //    //   / /  ^  /    |  |_)  |      |   (----`   /            / /  /_/  /   |      /        /   /        /    //    / /  _____  /  |  |/  /----.----)   |        /__/  /__/ /__/     /__/ | _| `._____|_______/    

这样启动的时候

Spring Boot的启动彩蛋

但是仅仅是这样看起来并不好看,还不如原来的图标好看呢。实际上Spring Boot为这个彩蛋提供了不少美化功能。

Spring Boot提供了一个枚举类 AnsiColor ,这个类可以控制 banner.txt 中的字符颜色,而且非常容易使用。

比如我可以将字符设置成颜色: BRIGHT_YELLOW

${AnsiColor.BRIGHT_YELLOW}      _______.___________.    ___      .______              /       |           |   /   /     |   _  /            |   (----`---|  |----`  /  ^  /    |  |_)  |            /   /       |  |      /  /_/  /   |      /         .----)   |      |  |     /  _____  /  |  |/  /----.    |_______/       |__|    /__/     /__/ | _| `._____|                                                           ____    __    ____  ___      .______          _______. /   /  /  /  /   / /   /     |   _  /        /       |  /   //    //   / /  ^  /    |  |_)  |      |   (----`   /            / /  /_/  /   |      /        /   /        /    //    / /  _____  /  |  |/  /----.----)   |        /__/  /__/ /__/     /__/ | _| `._____|_______/    

再重新启动项目,启动界面就会变成这个样子:

Spring Boot的启动彩蛋

类似 ${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}

启动就会是这一个样子:

Spring Boot的启动彩蛋

原文  http://www.cnblogs.com/whthomas/p/5268743.html
正文到此结束
Loading...