SpringBoot中的自定义Banner详细解析

 更新时间:2024年01月02日 08:53:57   作者:my_sky_  
这篇文章主要介绍了SpringBoot中的自定义Banner详细解析,Banner即横幅标语,我们在启动SpringBoot项目时会将Banner信息打印至控制台,我们可以输出一些图形、SpringBoot版本信息等内容,需要的朋友可以参考下

一、自定义banner

Spring Boot支持图片和文字两种banner样式,而图片会被转化为ASCII字符画展示。

在这里插入图片描述

1、自定义文字方式

在这里插入图片描述

这里可以有两种方式:

1)通过在配置文件中指定文件

static final String BANNER_LOCATION_PROPERTY = "spring.banner.location";

1> 在yaml文件中做如下配置:

spring:
  banner:
    location: banner_test.txt

2> 在resources目录下新建banner_test.txt文件:

在这里插入图片描述

3> 控制台输出如下:

在这里插入图片描述

2)默认读取resources目录下的banner.txt文件

static final String DEFAULT_BANNER_LOCATION = "banner.txt";

1> 只需要在resources目录下新建一个 banner.txt 文件:

在这里插入图片描述

2> 控制台输出如下:

在这里插入图片描述

2、自定义图片方式

在这里插入图片描述

static final String BANNER_IMAGE_LOCATION_PROPERTY = "spring.banner.image.location";

支持的图片类型:

static final String[] IMAGE_EXTENSION = { "gif", "jpg", "" };

1> 在yaml文件中做如下配置:

spring:
  banner:
    image:
      location: xiaoniao.jpg

2> 在resources目录下添加xiaoniao.jpg图片:

在这里插入图片描述

3> 控制台输出如下:

在这里插入图片描述

WARN 7716 — [ main] org.springframework.boot.ImageBanner : Image banner not printable: class path resource [xiaoniao.jpg] (class java.lang.IllegalStateException: ‘Unable to read image banner source’)

可以看到已经是使用了图片打印banner,但是打印不出来。

再换个图片试试:

在这里插入图片描述

输出如下:

在这里插入图片描述

这个图片可以用,但是感觉像乱码了!这就是上面提到的图片会被转化为ASCII字符画展示。所以不要用图片打印banner。

二、多个 banner

可以同时打印自定义图片、自定义文本banner:

比如在resources目录下添加 banner.txt 的同时,通过spring.banner.image.location指定打印图片的路径。

在这里插入图片描述

示例输出如下:

在这里插入图片描述

还有一种取巧的方式,除了打印系统自带的banner外,我们还可以自定义banner。 定义一个配置类,在其构造函数中打印banner:

到此这篇关于SpringBoot中的自定义Banner详细解析的文章就介绍到这了,更多相关自定义Banner内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 关于logback.xml和logback-spring.xml的区别及说明

    关于logback.xml和logback-spring.xml的区别及说明

    这篇文章主要介绍了关于logback.xml和logback-spring.xml的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Struts2学习教程之输入校验示例详解

    Struts2学习教程之输入校验示例详解

    这篇文章主要给大家介绍了关于Struts2学习教程之输入校验的相关资料,文中通过示例介绍的非常详细,对大家学习或者使用struts2具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-05-05
  • java批量导入导出文件的实例分享(兼容xls,xlsx)

    java批量导入导出文件的实例分享(兼容xls,xlsx)

    这篇文章主要给大家介绍了利用java批量导入导出文件的相关资料,文中给出了详细的实例代码,并且兼容xls,xlsx,对大家具有一定的参考学习价值,下面跟着小编一起来看看详细的介绍吧。
    2017-06-06
  • Java生成条形码code128(亲测有效)

    Java生成条形码code128(亲测有效)

    这篇文章主要介绍了Java生成条形码code128,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • 一文教你利用Stream API批量Mock数据的方法

    一文教你利用Stream API批量Mock数据的方法

    在日常开发的过程中我们经常会遇到需要mock一些数据的场景,比如说 mock 一些接口的返回或者说 mock 一些测试消息用于队列生产者发送消息。本文将教你如何通过 Stream API 批量 Mock 数据,需要的可以参考一下
    2022-09-09
  • java开源调度如何给xxljob加k8s执行器

    java开源调度如何给xxljob加k8s执行器

    这篇文章主要介绍了java开源调度如何给xxljob加一个k8s执行器, xxljob 在设计上,抽象出了执行器的接口,所以实现一个语言的执行器并不复杂,这里主要探索下,如何利用k8s的pod 的能力,使用 xxljob 调度 pod 运行,实现一个通用的和语言无关的执行器
    2022-02-02
  • IDEA新手必备之各种快捷键详解

    IDEA新手必备之各种快捷键详解

    这篇文章主要介绍了IDEA新手必备之各种快捷键详解,文中有非常详细的快捷键介绍,对正在使用IDEA的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Mybatis不启动项目直接测试Mapper的实现方法

    Mybatis不启动项目直接测试Mapper的实现方法

    在项目开发中,测试单个Mybatis Mapper方法通常需要启动整个SpringBoot项目,消耗大量时间,本文介绍通过Main方法和Mybatis配置类,快速测试Mapper功能,无需启动整个项目,这方法使用AnnotationConfigApplicationContext容器
    2024-09-09
  • java实现对对碰小游戏

    java实现对对碰小游戏

    这篇文章主要为大家详细介绍了java实现对对碰小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • 详解Java的内存模型

    详解Java的内存模型

    本文更准确的说法应该是JVM的内存模型,但是这里又牵扯了一些其他的前置知识,主要是想从Java入手,从源头上梳理一遍整个Java底层运行的机制,中间会额外补充一些和题目无关的前置基础,导致主讲内存模型的篇幅所占的比例就不是那么绝对。
    2021-06-06

最新评论