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

Spring Boot 自定义商标(Logo)的完整示例及配置说明( banner.txt 文件和配置文件属性信息)

Spring Boot 自定义商标(Logo)的完整示例及配置说明

在这里插入图片描述


1. Spring Boot 商标(Banner)功能概述

Spring Boot 在启动时会显示一个 ASCII 艺术的商标 LOGO(默认为 Spring 的标志)。开发者可通过以下方式自定义:

  1. 替换 banner.txt 文件:放置自定义的 ASCII 图案。
  2. 配置属性:修改商标文件路径、编码、显示模式等。

2. 自定义商标的完整步骤

步骤1:创建自定义 banner.txt 文件

在项目 src/main/resources 目录下创建或替换 banner.txt 文件,内容示例:

  _____       _                 _     _ _ _   
 |     |___ _| |___ ___ ___ _ _|_| |_| |_| |_ 
 | | | | . | . | -_|   |  _| | | | . | | |  _|
 |_|_|_|___|___|___|_|_|___|_|_|_|___|_|_|_|  

步骤2:配置 application.propertiesapplication.yml

通过以下属性自定义商标行为:


3. 配置属性详解

(1) spring.banner.location

作用:指定商标文件的路径,默认为 classpath:banner.txt

  • 示例
    # 指定自定义路径(如 resources/my-banner.txt)
    spring.banner.location=classpath:my-banner.txt
    

(2) spring.banner.charset

作用:设置商标文件的字符编码,默认为 UTF-8

  • 示例
    # 若文件使用 GBK 编码
    spring.banner.charset=GBK
    

(3) spring.main.banner-mode

作用:控制商标的显示方式,默认为 console(控制台输出)。

  • 可选值

    • console:在控制台输出(默认)。
    • log:以日志形式输出(日志级别为 INFO)。
    • off:禁用商标显示。
  • 示例

    # 将商标输出到日志
    spring.main.banner-mode=log
    

4. 完整配置示例

(1) application.properties 配置
# 自定义商标文件路径
spring.banner.location=classpath:my_banner.txt
# 文件编码(如需非 UTF-8)
spring.banner.charset=UTF-8
# 商标输出模式(控制台或日志)
spring.main.banner-mode=log

(2) application.yml 配置
spring:
  banner:
    location: classpath:custom_banner.txt
    charset: UTF-8
  main:
    banner-mode: log

5. 自定义 banner.txt 文件技巧
  • ASCII 艺术生成:可通过在线工具(如 ASCII Art Generator)生成图案。

  • 多行支持:直接换行即可,无需特殊符号。

  • 颜色支持:通过 ANSI 转义码添加颜色(需确保控制台支持):

    \033[31m  _____       _                 _     _ _ _   \033[0m
    \033[34m |     |___ _| |___ ___ ___ _ _|_| |_| |_| |_| \033[0m
    \033[32m | | | | . | . | -_|   |  _| | | | . | | |  _  \033[0m
    \033[33m |_|_|_|___|___|___|_|_|___|_|_|_|___|_|_|_|  \033[0m
    
    • \033[31m:红色
    • \033[34m:蓝色
    • \033[0m:重置颜色

6. 禁用商标输出

若需完全禁用商标:

spring.main.banner-mode=off

7. 高级配置:动态生成商标

通过实现 Banner 接口动态生成商标内容:

import org.springframework.boot.Banner;
import org.springframework.core.env.Environment;

public class CustomBanner implements Banner {
    @Override
    public void printBanner(Environment environment, Class<?> source) {
        System.out.println("Custom Banner:");
        System.out.println(" _____       _                 _     _ _ _   ");
        System.out.println("|     |___ _| |___ ___ ___ _ _|_| |_| |_| |_");
        // 其他行...
    }
}

application.properties 中指定:

spring.main.banner=CustomBanner

8. 对比表格:配置属性总结
属性描述默认值示例
spring.banner.location自定义商标文件路径(支持 classpath:, file:, http:// 等)classpath:banner.txtclasspath:my_banner.txt
spring.banner.charset文件编码格式UTF-8GBK
spring.main.banner-mode商标显示模式(console, log, offconsolelog

9. 完整示例代码结构

项目目录结构:

src/
└── main/
    └── resources/
        ├── banner.txt         # 默认商标文件
        └── custom_banner.txt  # 自定义文件(如配置中指定)

10. 注意事项
  1. 文件路径:路径需以 classpath:file: 等前缀指定,或直接使用相对路径。
  2. 颜色兼容性:ANSI 转义码在 Windows 控制台可能需要启用支持(如通过 System.setProperty("jline.terminal", "jline.UnsupportedTerminal"))。
  3. Spring Boot 版本差异:部分功能(如颜色支持)可能因版本不同而有差异。

11. 典型场景应用
  • 企业级应用:替换为公司 LOGO,增强品牌识别。
  • 调试场景:通过 banner-mode=log 将商标记录到日志文件。
  • 高并发服务:禁用商标(banner-mode=off)以减少启动输出。

通过以上步骤和配置,您可以完全控制 Spring Boot 启动时的商标显示行为。根据需求选择合适的配置项,轻松实现个性化和功能化调整。

相关文章:

  • Linux的基本指令
  • 在 Ubuntu 系统中安装字符集(字体或语言支持)特殊符号以及输出标点符号的方法
  • 归并排序法排序数组(js版)
  • 安装Istio
  • 洛谷题目:P2371 [CTSC 中国信息学国家集训队] 墨墨的等式 题解(本题难)
  • GoogleAgent-quickstart 学习笔记
  • 23种GoF设计模式
  • 【开题报告+文档+源码】基于SpringBoot教学评价评教系统
  • 数据采集与Web组态显示的技术实现路径解析
  • Android 16应用适配指南
  • 数据集成工具推荐,支持数据库、API、消息文件等集成技术,并具备低代码与可视化配置特性
  • ps 人像学习
  • 方案精读:51页 财政数据信息资源目录数据标准存储及大数据资产化规划方案【附全文阅读】
  • langchain之agent系列:zero-shot-react-description agent
  • 【models】Transformer 之 各种 Attention 原理和实现
  • LLM KV Cache压缩技术解析:Multi-Head Key-Value共享方案
  • openharmony—release—4.1开发环境搭建(踩坑记录)
  • 软考 系统架构设计师系列知识点 —— 设计模式之抽象工厂模式
  • WPS复制粘贴错误 ,文件未找到 mathpage.wll
  • Android学习22 -- perfetto
  • IMF前副总裁朱民捐赠1000万元,在复旦设立青云学子基金
  • 海尔·2025青岛马拉松两选手被终身禁赛:违规转让号码、穿戴他人号码
  • 10台核电新机组获核准,上海核电厂商独揽超500亿元订单
  • 外交部:欢迎外国朋友“五一”来中国
  • 外交部:印度香客赴中国西藏神山圣湖朝圣将于今年夏季恢复
  • 国家发改委回应美加征关税:典型的单边主义霸凌做法