SpringBoot彩蛋之定制启动画面

写在前面

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

① spring项目启动画面

mybatisplus启动画面

③若依项目启动画面

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

一、小试牛刀

① 新建一个SpringBoot项目

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

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

③ 启动项目,看看效果

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

二、在线制作banner

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

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

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

https://www.bootschool.net/ascii

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

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

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

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

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

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

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

三、自定义Banner颜色

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

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

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

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

yml 复制代码
#aplication.properties
spring.output.ansi.enabled=always
yml 复制代码
#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方法来实现,具体代码如下

java 复制代码
@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中配置关闭

yml 复制代码
spring:
  main:
    banner-mode: off

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

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

相关推荐
装不满的克莱因瓶9 分钟前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb
n北斗17 分钟前
常用类晨考day15
java
骇客野人20 分钟前
【JAVA】JAVA接口公共返回体ResponseData封装
java·开发语言
yuanbenshidiaos1 小时前
c++---------数据类型
java·jvm·c++
向宇it1 小时前
【从零开始入门unity游戏开发之——C#篇25】C#面向对象动态多态——virtual、override 和 base 关键字、抽象类和抽象方法
java·开发语言·unity·c#·游戏引擎
Lojarro2 小时前
【Spring】Spring框架之-AOP
java·mysql·spring
莫名其妙小饼干2 小时前
网上球鞋竞拍系统|Java|SSM|VUE| 前后端分离
java·开发语言·maven·mssql
isolusion2 小时前
Springboot的创建方式
java·spring boot·后端
zjw_rp2 小时前
Spring-AOP
java·后端·spring·spring-aop
Oneforlove_twoforjob3 小时前
【Java基础面试题033】Java泛型的作用是什么?
java·开发语言