• 82. Spring Boot – 启动彩蛋【从零开始学Spring Boot】


    我们在【28. SpringBoot启动时的Banner设置 】 这一小节介绍过设置Spring BootBanner,但是实际当中,我们希望做的更漂亮,所以也就有了这小节Spring Boot-启动彩蛋。(注意:这一个章节需要eclipse console支持ansi color

          我们都知道Spring Boot启动的时候,是如下的图标的:



     

           那么我想要自定义的更漂亮,那么应该怎么做呢?

           最简单的方式就是在resources目录下面放入一个banner.txt文件,Spring Boot启动的时候就会优先启动这个文件中的内容。

           这里推荐两个字符画的网站,我们可以将生成的的字符串放入这个banner.txt文件中。

    http://www.network-science.de/ascii/

    http://patorjk.com/software/taag/

     

    比如:我生成一个angel的图标,启动的时候,如下:



     

    但是仅仅是这样看起来并不好看,还不如原来的图标好看呢。实际上Spring Boot为这个彩蛋提供了不少美化功能。Spring Boot提供了一个枚举类AnsiColor,这个类可以控制banner.txt中的字符颜色,而且非常容易使用。比如我可以将字符设置成颜色:BRIGHT_BLUE,只需要在banner.txt的最前面添加${AnsiColor.BRIGHT_BLUE}

    即可,运行效果如下:



     

           类似 ${AnsiColor.BRIGHT_BLUE} 这种表达式,其实可以放置多个,启动界面上的颜色,总是会根据AnsiColor的设置改变界面的颜色,这样启动的界面就会显示多种不同的颜色了。除了这样美化的功能之外,启动界面很重要的功能就是要告诉我们这个项目的一些重要信息。

     

    ${application.version} 这个是MANIFEST.MF文件中的版本号 

    ${application.formatted-version} 这个是上面的的版本号前面加v后上括号 

    ${spring-boot.version} 这个是springboot的版本号 

    ${spring-boot.formatted-version}同上 

     

     

    把以上信息通过${}放入banner.txt中,就会打印出项目对应的信息。

    这里放一个完整的banner.txt文件:

    ${AnsiColor.BRIGHT_BLUE}

     ______     __   __     ______     ______     __       

    /  __    / "-.    /  ___   /  ___   /       

      __   -.    \__     __   \____ 

      \_ \_  \_\"\_  \_____  \_____  \_____

      /_//_/   /_/ /_/   /_____/   /_____/   /_____/

    ${AnsiColor.BRIGHT_GREEN}

    ::: Project (version:${application.version}) :::             (^O^)    Spring-Boot ${spring-boot.version}

     

           还有Spring Boot更酷的就是还支持ansi编码,能够支持显示彩色图片,看如下效果图:(在本文档提供此banner.txt的下载)。


     

     

           另外在文章中https://github.com/spring-projects/spring-boot/pull/4647 指出了还可以从一张图片生成Ascii编码,然后放入到我们的banner.txt进行显示出来,但是可以自己看看,这里我没有进行实践了。

  • 相关阅读:
    FtpClient中文乱码问题解决
    JS点击按钮弹出窗口
    win7配置简单的FTP服务器
    docker 使用案例:部署nginx
    Asp.Net Boilerplate Project (ABP) 视频教程
    dva.js 用法总结
    webpack4: compilation.mainTemplate.applyPluginsWaterfall is not a function 解决方法
    c# MongoDB Driver 官方教程翻译
    c# redis 操作类库推荐:StackExchange.Redis.Extensions
    react-native导航器 react navigation 介绍
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6147054.html
Copyright © 2020-2023  润新知