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 (●'◡'●)

相关推荐
q***1361几秒前
SpringSecurity相关jar包的介绍
java·jar
皮影w12 分钟前
Java SpringAOP入门
java·开发语言
007php00715 分钟前
Redis面试题解析:Redis的数据过期策略
java·网络·redis·缓存·面试·职场和发展·php
w***488239 分钟前
Spring Boot3.x集成Flowable7.x(一)Spring Boot集成与设计、部署、发起、完成简单流程
java·spring boot·后端
u***1371 小时前
详解tomcat中的jmx监控
java·tomcat
Vic101011 小时前
Java 序列化与反序列化:深入解析与实践
java·开发语言
后端小张1 小时前
【JAVA 进阶】Spring Cloud 微服务全栈实践:从认知到落地
java·开发语言·spring boot·spring·spring cloud·微服务·原理
zl9798991 小时前
RabbitMQ-发布确认高级
java·分布式·rabbitmq
灰小猿1 小时前
分布式项目集成TLog实现轻量级日志链路追踪
java·分布式·springcloud·tlog·日志链路追踪
乄bluefox1 小时前
高性能分布式 ID 生成器:基于 Redis Segment 预分配的实践
java·redis·分布式