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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java通过ip获取客户端Mac地址的小例子

    java通过ip获取客户端Mac地址的小例子

    java通过ip获取客户端Mac地址的小例子,需要的朋友可以参考一下
    2013-03-03
  • springboot 配置DRUID数据源的方法实例分析

    springboot 配置DRUID数据源的方法实例分析

    这篇文章主要介绍了springboot 配置DRUID数据源的方法,结合实例形式分析了springboot 配置阿里DRUID数据源的具体步骤与相关操作技巧,需要的朋友可以参考下
    2019-12-12
  • Java位图Bitmap从入门到实战应用详解

    Java位图Bitmap从入门到实战应用详解

    位图(Bitmap)作为位运算的经典应用之一,通过巧妙地利用二进制位来表示数据的存在性或状态,实现了对大规模数据的高效存储与处理,这篇文章主要介绍了Java位图Bitmap从入门到实战应用的相关资料,需要的朋友可以参考下
    2025-09-09
  • java实现简易局域网聊天功能

    java实现简易局域网聊天功能

    这篇文章主要为大家详细介绍了java实现简易局域网聊天功能,使用UDP模式编写一个聊天程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • SpringBoot+shardingsphere实现按月分表功能教程

    SpringBoot+shardingsphere实现按月分表功能教程

    这篇文章主要介绍了SpringBoot+shardingsphere实现按月分表功能教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Java多线程之读写锁分离设计模式

    Java多线程之读写锁分离设计模式

    这篇文章主要介绍了Java多线程读写锁分离设计模式,主要利用Java到吗完成read read 并行化、read write 不允许、write write 不允许几项任务,需要的朋友可以参考一下
    2021-10-10
  • Java四种访问控制修饰符知识点总结

    Java四种访问控制修饰符知识点总结

    本篇文章给大家详细分析了Java四种访问控制修饰符的相关知识点,有兴趣的朋友可以参考学习下。
    2018-03-03
  • java给钉钉邮箱发送邮件功能实现

    java给钉钉邮箱发送邮件功能实现

    文章介绍了如何使用Java给钉钉邮箱发送邮件,包括开通POP和IMAP、引入pom、逻辑处理、直接添加前端传来的MultipartFile、添加多个附件以及给多个邮箱发送邮件等步骤,感兴趣的朋友一起看看吧
    2025-02-02
  • SpringBoot中application.yml配置文件的写法

    SpringBoot中application.yml配置文件的写法

    这篇文章主要介绍了SpringBoot中application.yml配置文件的写法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 详谈java中File类getPath()、getAbsolutePath()、getCanonical的区别

    详谈java中File类getPath()、getAbsolutePath()、getCanonical的区别

    下面小编就为大家带来一篇详谈java中File类getPath()、getAbsolutePath()、getCanonical的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07

最新评论