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

相关文章

  • JVM的7种垃圾回收器(小结)

    JVM的7种垃圾回收器(小结)

    这篇文章主要介绍了JVM的7种垃圾回收器(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Java详细介绍单例模式的应用

    Java详细介绍单例模式的应用

    单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式
    2022-09-09
  • Java对世界不同时区timezone之间时间转换的处理方法

    Java对世界不同时区timezone之间时间转换的处理方法

    这篇文章主要介绍了Java对世界不同时区timezone之间时间转换的处理方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 详解Maven项目Dependencies常见报错及解决方案

    详解Maven项目Dependencies常见报错及解决方案

    这篇文章主要介绍了详解Maven项目Dependencies常见报错及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Spring源码解析容器初始化构造方法

    Spring源码解析容器初始化构造方法

    这篇文章主要介绍了Spring源码解析容器初始化构造方法,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • 基于Java编写一个PDF与Word文件转换工具

    基于Java编写一个PDF与Word文件转换工具

    前段时间一直使用到word文档转pdf或者pdf转word,寻思着用Java应该是可以实现的,于是花了点时间写了个文件转换工具,感兴趣的可以了解一下
    2023-01-01
  • SpringCloud  OpenFeign 参数传递和响应处理的详细步骤

    SpringCloud  OpenFeign 参数传递和响应处理的详细步骤

    本文给大家讲解SpringCloud  OpenFeign 参数传递和响应处理的详细步骤,本文给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-02-02
  • Java中List与数组相互转换实例分析

    Java中List与数组相互转换实例分析

    这篇文章主要介绍了Java中List与数组相互转换的方法,实例分析了Java中List与数组相互转换中容易出现的问题与相关的解决方法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-05-05
  • 容器环境的JVM内存设置实践记录

    容器环境的JVM内存设置实践记录

    Docker和K8S的兴起,很多服务已经运行在容器环境,对于java程序,JVM设置是一个重要的环节,这里总结下我们项目里的最佳实践,对容器环境的JVM内存相关知识感兴趣的朋友一起看看吧
    2022-03-03
  • java中Servlet程序下载文件实例详解

    java中Servlet程序下载文件实例详解

    在本篇文章里小编给大家整理的是一篇关于java中Servlet程序下载文件实例内容,有兴趣的朋友们可以学习参考下。
    2021-02-02

最新评论