当前位置: 首页 > news >正文

springboot 设置自定义启动banner背景图 教程

springboot banner

Spring Boot中的banner是在应用程序启动时显示的一个ASCII艺术字符或文本。它被用来给用户展示一些关于应用程序的信息,例如名称、版本号或者公司标志等。

使用Spring Boot的默认设置,如果项目中有一个名为“banner.txt”的文件放置在classpath下的“/META-INF”目录中,那么这个文件的内容将会被用作应用程序的banner。

你可以使用任何文本编辑器创建一个banner.txt文件,并把想要显示的ASCII艺术字符或自定义文本放入其中。

以下是一些常见的自定义banner配置:

1.设置banner的模式:

通过在application.properties文件中添加以下属性进行设置:

spring.main.banner-mode=console

可以不配置,默认会在在控制台和日志中输出banner

  • off:禁用banner;
  • console:在控制台输出banner;
  • log:在日志中输出banner。

2.添加图片形式的banner:

在/banner.txt中可以使用特殊的占位符${AnsiColor.X},其中X是颜色码。比如${AnsiColor.GREEN}表示绿色。你可以使用以下特殊的ANSI颜色码改变文本的颜色:

  • BLACK
  • RED
  • GREEN
  • YELLOW
  • BLUE
  • MAGENTA
  • CYAN
  • WHITE

3.添加自定义文本:

可以在banner.txt文件中插入自定义的文本,例如应用程序的名称、版本号或其他相关信息。

以下是一个示例banner.txt文件内容:

 _                                   
| |_   __ _  _ __  ____  __ _  _ __  
| __| / _` || '__||_  / / _` || '_ \ 
| |_ | (_| || |    / / | (_| || | | |\__| \__,_||_|   /___| \__,_||_| |_|

4、改变banner字符图案的颜色

在banner.txt文件中加入表达式(有多种颜色可选择): ${AnsiColor.BRIGHT_GREEN}

在Spring Boot的banner.txt文件中,您可以使用占位符表达式来动态生成横幅内容。其他修改banner展示内容的表达式如下:

示例:

Welcome to ${application.name}! Version: ${application.version}

总结:

  1. 创建banner.txt文件:在项目的资源目录下创建一个名为banner.txt的文件。

  2. 使用占位符表达式:在banner.txt文件中使用${}来表示占位符,其中{}内部是要替换的属性名称。

  3. 配置属性值:在应用程序的配置文件(如application.propertiesapplication.yml)中定义相应的属性和值。例如,在application.properties文件中添加以下内容:

通过上述示例和总结,您可以在banner.txt文件中使用占位符表达式来生成动态的横幅内容,以展示应用程序的相关信息。

请注意,以上示例和总结仅适用于Spring Boot中的banner.txt文件和占位符表达式的使用。


最后附上字符生成网站及在线图片转换为字符图案网站(有兴趣的小伙伴可自行去生成自己喜欢的图案):

http://patorjk.com/software/taag

佛祖版Baner


-------佛祖保佑  永无BUG-----------佛祖保佑  必发大财--------佛祖保佑  毛发旺盛---------

项目resources文件下新建banner.txt文件 

banner.txt  代码

${AnsiColor.BLUE}         -------------------------------阿弥陀佛-------------------------------------------------阿弥陀佛---------------------------------------------------阿弥陀佛------------------------
${AnsiColor.BLUE}                                         _oo0oo_                                                  _oo0oo_                                                    _oo0oo_
${AnsiColor.BLUE}                                        o8888888o                                                o8888888o                                                  o8888888o
${AnsiColor.BLUE}                                        88" . "88                                                88" . "88                                                  88" . "88
${AnsiColor.BLUE}                                       (| -^_^ |)                                               (| --_-- |)                                                 (| @_@ |)
${AnsiColor.BLUE}                                        0\  =  /0                                                0\  =  /0                                                  0\  =  /0
${AnsiColor.BLUE}                                      ___/‘---’\___                                            ___/‘---’\___                                              ___/‘---’\___
${AnsiColor.BLUE}                                    .' \|       |/ '.                                        .' \|       |/ '.                                          .' \|       |/ '.
${AnsiColor.BLUE}                                   / \\|||  :  |||// \                                      / \\|||  :  |||// \                                        / \\|||  :  |||// \
${AnsiColor.BLUE}                                  / _||||| -卍-|||||_ \                                    / _||||| -卍-|||||_ \                                      / _||||| -卍-|||||_ \
${AnsiColor.BLUE}                                 |   | \\\  -  /// |   |                                  |   | \\\  -  /// |   |                                    |   | \\\  -  /// |   |
${AnsiColor.BLUE}                                 | \_|  ''\---/''  |_/ |                                  | \_|  ''\---/''  |_/ |                                    | \_|  ''\---/''  |_/ |
${AnsiColor.BLUE}                                 \  .-\__  '-'  ___/-. /                                  \  .-\__  '-'  ___/-. /                                    \  .-\__  '-'  ___/-. /
${AnsiColor.BLUE}                               ___'. .'  /--.--\  '. .'___                              ___'. .'  /--.--\  '. .'___                                ___'. .'  /--.--\  '. .'___
${AnsiColor.BLUE}                           ."" ‘<  ‘.___\_<|>_/___.’>’ "".                          ."" ‘<  ‘.___\_<|>_/___.’>’ "".                            ."" ‘<  ‘.___\_<|>_/___.’>’ "".
${AnsiColor.BLUE}                         | | :  ‘- \‘.;‘\ _ /’;.’/ - ’ : | |                      | | :  ‘- \‘.;‘\ _ /’;.’/ - ’ : | |                        | | :  ‘- \‘.;‘\ _ /’;.’/ - ’ : | |
${AnsiColor.BLUE}                           \  \ ‘_.   \_ __\ /__ _/   .-’ /  /                      \  \ ‘_.   \_ __\ /__ _/   .-’ /  /                        \  \ ‘_.   \_ __\ /__ _/   .-’ /  /
${AnsiColor.BLUE}                      =====‘-.____‘.___ \_____/___.-’___.-’=====               =====‘-.____‘.___ \_____/___.-’___.-’=====                 =====‘-.____‘.___ \_____/___.-’___.-’=====
${AnsiColor.BLUE}                                         ‘=---=’                                                  ‘=---=’                                                    ‘=---=’
${AnsiColor.BLUE}         ----------------------------佛祖保佑  永无BUG----------------------------------------佛祖保佑  必发大财------------------------------------------佛祖保佑  毛发旺盛------------------${AnsiColor.BLUE}:: 虎的一比! ${blade.service.version} :: ${spring.application.name}:${AnsiColor.RED}${blade.env}${AnsiColor.BLUE} :: Running SpringBoot ${spring-boot.version} :: ${AnsiColor.BRIGHT_BLACK}

启动图

相关文章:

springboot 设置自定义启动banner背景图 教程

springboot banner Spring Boot中的banner是在应用程序启动时显示的一个ASCII艺术字符或文本。它被用来给用户展示一些关于应用程序的信息&#xff0c;例如名称、版本号或者公司标志等。 使用Spring Boot的默认设置&#xff0c;如果项目中有一个名为“banner.txt”的文件放置…...

CSS的引入方式有哪些?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 内联样式&#xff08;Inline Styles&#xff09;⭐ 内部样式表&#xff08;Internal Stylesheet&#xff09;⭐ 外部样式表&#xff08;External Stylesheet&#xff09;⭐ 导入样式表&#xff08;Import Stylesheet&#xff09;⭐ 写在最…...

.net core的Knife4jUI,让swagger更精致

要在 .NET Core 中使用 IGeekFan.AspNetCore.Knife4jUI&#xff0c;您可以按照以下步骤进行配置&#xff1a; 首先&#xff0c;安装 IGeekFan.AspNetCore.Knife4jUI NuGet 包。可以通过 Visual Studio 的 NuGet 包管理器或者 .NET CLI 进行安装。 在 Startup.cs 文件的 Config…...

Android 开发中需要了解的 Gradle 知识

作者&#xff1a;wkxjc Gradle 是一个基于 Groovy 的构建工具&#xff0c;用于构建 Android 应用程序。在 Android 开发中&#xff0c;了解 Gradle 是非常重要的&#xff0c;因为它是 Android Studio 默认的构建工具&#xff0c;可以帮助我们管理依赖项、构建应用程序、运行测试…...

Linux之【进程间通信(IPC)】-总结篇

Linux之【进程间通信&#xff08;IPC&#xff09;】-总结篇 管道System V共享内存System V消息队列System V信号量IPC资源的管理方式 往期文章 1.进程间通信之管道 2.进程间通信之System V共享内存 管道 进程之间具有独立性&#xff0c;拥有自己的虚拟地址空间&#xff0c;因…...

C++QT教程3——手册4.11.1自带教程(笔记)——创建一个基于Qt Widget的应用程序

文章目录 创建一个基于Qt Widget的应用程序创建Text Finder项目素材文件 填补缺失的部分设计用户界面完成头文件完成源文件创建资源文件 编译和运行程序 参考文章 创建一个基于Qt Widget的应用程序 本教程介绍如何使用Qt Creator创建一个小型Qt应用程序&#xff0c;名为Text F…...

手机商城网站的分析与设计(论文+源码)_kaic

目录 摘 要 1 1 绪论 2 1.1选题背景意义 2 1.2国内外研究现状 2 1.2.1国内研究现状 2 1.2.2国外研究现状 3 1.3研究内容 3 2 网上手机商城网站相关技术 4 2.1.NET框架 4 2.2Access数据库 4 2.3 JavaScript技术 4 3网上手机商城网站分析与设…...

vue2 封装 webSocket 开箱即用

第一步&#xff1a; 下载 webSocket npm install vue-native-websocket --save 第二步&#xff1a; 需要在 main.js 中 引入 import websocket from vue-native-websocket; Vue.use(websocket, , {connectManually: true, // 手动连接format: json, // json格式reconnection:…...

使用fopen等标准C库来操作文件

fopen 需要的头文件&#xff1a; #include <stdio.h> 函数原型&#xff1a; FILE *fopen(const char *pathname, const char *mode); 参数&#xff1a; pathname: 文件路径mode: “r” &#xff1a;以只读方式打开文件&#xff0c;该文件必须存在。“w” &#xff…...

Spring-Cloud-Loadblancer详细分析_1

背景 从SpringCloud 2020 版本之后&#xff0c;组件移除了除 Eureka 以外&#xff0c;所有 Netflix 的相关&#xff0c;包括最常用的 Ribbon Hystrix 等&#xff0c;所以 SpringCloud 在 spring-cloud-commons 提供了Loadbalancer 用来替代 Ribbon。本系列就来介绍Loadbalance…...

键盘键码keyCode对照表

字母和数字键的键码值(KeyCode)按键键码按键键码A65J74B66K75C67L76D68M77E69N78F70O79G71P80H72Q81I73R82 字母和数字键的键码值(KeyCode)按键键码按键键码S83149T84250U85351V86452W87553X88654Y89755Z90856048957 数字键盘上的键的键码值(KeyCode)按键键码按键键码0968104…...

jupyter切换conda虚拟环境

环境安装 conda install nb_conda 进入你想使用的虚拟环境&#xff1a; conda activate your_env_name 在你想使用的conda虚拟环境中&#xff1a; conda install -y jupyter 在虚拟环境中安装jupyter&#xff1a; conda install -y jupyter 重启jupyter 此时我们已经把该安装…...

【数据结构•堆】经典问题:k路归并

题目描述 k路归并问题&#xff1a;   把k个有序表合并成一个有序表。&#xff08; k < 10^4 &#xff09; 输入输出格式 输入格式&#xff1a; 输入数据共有 2*k1 行。   第一行&#xff0c;一个整数k&#xff08; k < 10^4 &#xff09;&#xff0c;表示有k个有序…...

VUE3 动态路由

带参数的动态路由匹配 很多时候&#xff0c;我们需要将给定匹配模式的路由映射到同一个组件。例如&#xff0c;我们可能有一个 User 组件&#xff0c;它应该对所有用户进行渲染&#xff0c;但用户 ID 不同。在 Vue Router 中&#xff0c;我们可以在路径中使用一个动态字段来实现…...

CentOS软件包管理rpm、yum

一、软件包概述 Linux常见软件包分为两种&#xff0c;分别是源代码包、二进制文件包。源代码包是没有经过编译的包&#xff0c;需要经过GCC、C编译器编译才能运行&#xff0c;文件内容包含源代码文件&#xff0c;通常以.tar.gz、.zip、.rar结尾&#xff1b;二进制包无需编译&am…...

【VSCode】报错:出现段错误解决办法 (Segmentation fault)

VScode报错&#xff1a;Segmentation fault (core dumped)的解决办法 解决Program received signal SIGSEGV, Segmentation fault.的辛酸 Linux环境下段错误的产生原因及调试方法小结 Linux下的段错误Segmentationfault产生的原因及调试方法经典.pdf 在程序中&#xff0c;TF…...

Linux Centos 8 用户管理之重置密码

如果在使用linux系统时遇到系统密码问题无法进入系统或者操作的时候可以按照下面的方法重置用户密码。 一、root用户密码重置&#xff1a; 方式一&#xff1a; 1.重启电脑或虚拟机&#xff0c;在刚进引导界面时候按“e"键&#xff0c;进入编辑模式。 2.在”quiet"…...

C语言快速回顾(三)

前言 在Android音视频开发中&#xff0c;网上知识点过于零碎&#xff0c;自学起来难度非常大&#xff0c;不过音视频大牛Jhuster提出了《Android 音视频从入门到提高 - 任务列表》&#xff0c;结合我自己的工作学习经历&#xff0c;我准备写一个音视频系列blog。C/C是音视频必…...

【Apollo】Apollo-ros版本架构学习与源码分析

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍Apollo-ros版本架构学习与源码分析。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&a…...

【Express.js】集成RabbitMQ

集成RabbitMQ 本节我们介绍在 express.js 中集成 rabbitmq. RabbitMQ 是一个消息队列中间件&#xff0c;常用于请求削峰&#xff0c;事务的队列处理&#xff0c;事件订阅机制的实现等。 准备工作 创建一个 express.js 项目&#xff08;本文基于evp-express-cli&#xff09;…...

如何高效去除视频水印:基于LAMA模型的智能修复完整指南

如何高效去除视频水印&#xff1a;基于LAMA模型的智能修复完整指南 【免费下载链接】WatermarkRemover 批量去除视频中位置固定的水印 项目地址: https://gitcode.com/gh_mirrors/wa/WatermarkRemover 还在为视频中顽固的水印而烦恼吗&#xff1f;想要获得纯净无干扰的视…...

5分钟搞定Windows开机画面:HackBGRT终极定制指南

5分钟搞定Windows开机画面&#xff1a;HackBGRT终极定制指南 【免费下载链接】HackBGRT Windows boot logo changer for UEFI systems 项目地址: https://gitcode.com/gh_mirrors/ha/HackBGRT 厌倦了每次开机都看到千篇一律的Windows徽标&#xff1f;想让电脑启动的第一…...

图像矢量化工具深度解析:从位图到完美SVG的智能转换方案

图像矢量化工具深度解析&#xff1a;从位图到完美SVG的智能转换方案 【免费下载链接】vectorizer Potrace based multi-colored raster to vector tracer. Inputs PNG/JPG returns SVG 项目地址: https://gitcode.com/gh_mirrors/ve/vectorizer 在现代数字设计工作流中&…...

【香橙派实战指南】从零到一:系统镜像烧录与首次启动全解析

1. 硬件准备与选型指南 第一次拿到香橙派开发板时&#xff0c;我盯着那个巴掌大的小盒子看了半天——这玩意儿真能当电脑用&#xff1f;后来折腾了三天三夜才明白&#xff0c;选对硬件配件比技术操作更重要。先说TF卡这个最容易翻车的部件&#xff0c;去年双十一贪便宜买了某杂…...

别再只用NDVI了!用Python+Sentinel-2数据实战对比5种常用植被指数(附代码)

别再只用NDVI了&#xff01;用PythonSentinel-2数据实战对比5种常用植被指数&#xff08;附代码&#xff09; 遥感植被指数是农业、林业和生态监测的重要工具。许多从业者习惯性地使用NDVI&#xff08;归一化差异植被指数&#xff09;作为"万能指标"&#xff0c;但实…...

网络安全视角:图片旋转判断模型的对抗攻击

网络安全视角&#xff1a;图片旋转判断模型的对抗攻击 1. 引言 在当今数字化时代&#xff0c;图片旋转判断模型已经成为许多应用的核心组件&#xff0c;从社交媒体自动旋转照片到文档扫描应用的自动校正功能。然而&#xff0c;这些看似简单的模型背后隐藏着严重的安全隐患。本…...

从课堂到实战:手把手教你用AT89C51和LCD1602做一个能调时间的电子钟(附Proteus仿真)

从零构建AT89C51电子钟&#xff1a;模块化编程与Proteus仿真全指南 当你第一次看到LCD屏幕上跳动的数字准确显示时分秒&#xff0c;那种亲手创造"时间"的成就感&#xff0c;是学习单片机最迷人的瞬间。这个基于AT89C51的电子钟项目&#xff0c;正是为刚入门嵌入式开发…...

如何3步解锁Cursor Pro高级功能:开源工具完整指南

如何3步解锁Cursor Pro高级功能&#xff1a;开源工具完整指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your trial r…...

Visual Syslog Server:Windows环境下企业级日志监控的智能解决方案

Visual Syslog Server&#xff1a;Windows环境下企业级日志监控的智能解决方案 【免费下载链接】visualsyslog Syslog Server for Windows with a graphical user interface 项目地址: https://gitcode.com/gh_mirrors/vi/visualsyslog 在复杂的IT基础设施中&#xff0c…...

JDK21+JavaFX23跨平台打包实战:从IntelliJ IDEA到一键部署的完整流程

JDK21JavaFX23跨平台打包实战&#xff1a;从IntelliJ IDEA到一键部署的完整流程 1. 环境准备与项目配置 在开始JavaFX23应用的跨平台打包前&#xff0c;确保开发环境满足以下要求&#xff1a; JDK21&#xff1a;必须使用JDK21或更高版本&#xff0c;早期版本不支持JavaFX23Inte…...