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

Spring Boot-自定义banner

在 Spring Boot 应用中,你可以自定义启动时显示的 banner。这些 banner 可以包括图形、文字或者其他形式的标识。如图所示:

1. 使用 banner.txt 文件

默认情况下,Spring Boot 使用项目的 banner.txt 文件中的内容作为启动时的 banner。你可以在 src/main/resources 目录下创建一个名为 banner.txt 的文件,并在其中放入自定义的 ASCII 艺术或文本。

例如在banner.txt文件中输入自定义文本:

  ____  _               _      / ___|| |_   ___  __ _| | ___ \___ \| | | | \ \/ /| |/ _ \___) | | |_| |>  < | |  __/|____/|_|\__,_/_/\_\|_|\___|

重新运行Springboot项目即可。

2. 使用 Spring Boot Banner 类

如果你需要更高级的自定义,例如动态生成 banner 或从外部源加载,可以通过编写一个自定义 Banner 类来实现。实现 org.springframework.boot.Banner 接口,并重写 printBanner 方法

示例:

import org.springframework.boot.Banner;
import org.springframework.core.env.Environment;import java.io.PrintStream;public class CustomBanner implements Banner {@Overridepublic void printBanner(Environment environment, Class<?> sourceClass, PrintStream out) {out.println("Custom Banner: Welcome to My Spring Boot Application!");}
}

然后,在 application.properties 文件中或在 SpringApplication 实例中配置自定义 banner:

application.properties 文件中配置:

spring.banner.location=classpath:custom-banner.txt

在你的 Spring Boot 主类中,你可以配置应用以使用自定义 Banner。例如:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication app = new SpringApplication(Application.class);app.setBanner(new CustomBanner()); // 设置自定义的 Bannerapp.run(args);}
}


 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ASP.NET Core 入门教学十七 GraphQL入门指南
  • 触想内嵌式工业一体机应用于智能检票机改善旅游体验
  • How can I provide a RGBA png file to OpenAI PHP library
  • 【LeetCode】07.整数反转
  • 系统架构师考试学习笔记第三篇——架构设计高级知识(18)面向服务架构设计理论与实践
  • DFS算法专题(一)——二叉树中的深搜【回溯与剪枝的初步注入】
  • 分类预测|基于蜣螂优化极限梯度提升决策树的数据分类预测Matlab程序DBO-Xgboost 多特征输入单输出 含基础模型
  • MySQL 默认事务隔离级别及原因
  • 数组与贪心算法——409、621(1中1简)
  • 游卡,三七互娱,得物,顺丰,快手,oppo,康冠科技,途游游戏,埃科光电25秋招内推
  • notepad++将换行替换成空
  • c++一个数因子和(快速求解)
  • C++ 设计模式——解释器模式
  • 契约锁亮相2024帆软第六届智数大会,助力业务数据安全可信
  • Swagger UI 无法发送 Cookie
  • Angularjs之国际化
  • crontab执行失败的多种原因
  • eclipse(luna)创建web工程
  • Gradle 5.0 正式版发布
  • js继承的实现方法
  • log4j2输出到kafka
  • SpiderData 2019年2月25日 DApp数据排行榜
  • vuex 笔记整理
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 分享几个不错的工具
  • 开源地图数据可视化库——mapnik
  • 聊聊flink的BlobWriter
  • 批量截取pdf文件
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 写代码的正确姿势
  • 一个JAVA程序员成长之路分享
  • 原生 js 实现移动端 Touch 滑动反弹
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 阿里云移动端播放器高级功能介绍
  • $.ajax,axios,fetch三种ajax请求的区别
  • (04)odoo视图操作
  • (06)Hive——正则表达式
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (javascript)再说document.body.scrollTop的使用问题
  • (独孤九剑)--文件系统
  • (回溯) LeetCode 46. 全排列
  • (转)Sublime Text3配置Lua运行环境
  • (转载)hibernate缓存
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net core 连接数据库,通过数据库生成Modell
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .NET gRPC 和RESTful简单对比
  • .net6使用Sejil可视化日志
  • .net和php怎么连接,php和apache之间如何连接
  • .NET建议使用的大小写命名原则
  • .NET中 MVC 工厂模式浅析
  • .net中应用SQL缓存(实例使用)
  • /*在DataTable中更新、删除数据*/