SpringBoot彩蛋之定制启动画面

时间:2024-07-09 08:25:24

写在前面

在日常开发中,我们经常会看到各种各样的启动画面。例如以下几种

① spring项目启动画面

springboot启动画面

mybatisplus启动画面

mybatis启动画面

③若依项目启动画面

若依启动画面

还有很多各式各样好看的启动画面,那么怎么定制这些启动画面呢?

一、小试牛刀

① 新建一个SpringBoot项目

新建springboot项目

②在项目的resources目录下新建一个banner.txt文件,然后将以下佛祖保佑内容粘贴到里面

                   _ooOoo_
                  o8888888o
                  88" . "88
                  (| -_- |)
                  O\  =  /O
               ____/`---'\____
             .'  \\|     |//  `.
            /  \\|||  :  |||//  \
           /  _||||| -:- |||||-  \
           |   | \\\  -  /// |   |
           | \_|  ''\---/''  |   |
           \  .-\__  `-`  ___/-. /
         ___`. .'  /-.-\  `. . __
      ."" '<  `.___\_<|>_/___.'  >'"".
     | | :  `- \`.;`\ _ /`;.`/ - ` : | |
     \  \ `-.   \_ __\ /__ _/   .-` /  /
======`-.____`-.___\_____/___.-`____.-'======
                   `=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            佛祖保佑       永无BUG

③ 启动项目,看看效果

无需任何其他配置,我们只需要重新启动项目,控制台就可以打印我们定制的启动画面

控制台启动画面

二、在线制作banner

这里提供几个生成banner的网站,上面小节的“佛祖保佑,永无BUG”也是通过下面在线网站生成的

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

下面截图中以生成www.xiezhrspace.cn为例,我们可以选择不同字体

在线生成banner网址1

https://www.bootschool.net/ascii

在线生成banner网址2

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

在线生成banner网址3

https://www.degraeve.com/img2txt.php

这个网站比较厉害,可以根据在线图片来转换。而且还可以生成彩色的

我们找一张冰冰的图来试试,https://pic3.zhimg.com/v2-c19edbc9051caddc6b0eb5e6f53ae55a_r.jpg

根据在线图片生成txt

左边是原图,右边是生成的banner.txt

生成后的图

https://www.fontke.com/tool/image2ascii/

这个在线网站也可以根据上传图片生成

在线生成banner网址5

三、自定义Banner颜色

不少小伙伴不喜欢黑白的启动界面,SpringBoot提供了AnsiColor 枚举类来控制banner.txt的颜色显示

比如,我们想要将上面的佛祖变成金黄色的,我们只需要在佛祖字符的最前面添加${AnsiColor.BRIGHT_YELLOW} 代码即可

一尊金色的佛祖就可以出来了

自定义Banner颜色

注: 由于版本原因,小伙伴设置好之后可能颜色不会改变,我们可以在aplication.propertiesapplication.yml文件中添加如下配置

#aplication.properties
spring.output.ansi.enabled=always
#application.yml
spring:
  output:
    ansi:
      enabled: always

四、Banner其他设置

除了上面的基本设置之外,我们还可以在Banner.txt文件中加入一些属性

  • ${application.version} 获取MANIDEST.MF文件中版本号
  • ${application.formatted-version} 格式化后的{application.version}版本信息
  • ${spring-boot.version} SpringBoot的版本号
  • ${spring-boot.formatted-version} 格式化后的{spring-boot.version}版本信息

五、关闭Banner

如果小伙伴们不喜欢banner这种信息,想要关闭它。

我们可以修改入口类的main方法来实现,具体代码如下

@SpringBootApplication
public class CustomBannerDemoApplication {

    public static void main(String[] args) {
        SpringApplication app = new SpringApplication(CustomBannerDemoApplication.class);
        app.setBannerMode(Banner.Mode.OFF);
        app.run(args);
    }

}

其中app.setBannerMode(Banner.Mode.OFF) 代表Banner模式关闭

当然了,我们也可以在application.yml中配置关闭

spring:
  main:
    banner-mode: off

本期内容到这儿就结束了,★,°:.☆( ̄▽ ̄)/$:.°★ 。 希望对您有所帮助

我们下期再见 ヾ(•ω•`)o (●'◡'●)