pring Boot与banner

本文介绍如何在SpringBoot项目中自定义启动时显示的Banner,包括使用不同格式的图片文件和文本,以及如何利用占位符展示应用版本信息。同时,提供了三种关闭Banner显示的方法。

springboot项目启动时,控制台会打印自带的banner,自定义的话,只需要在src/main/resources路径下新建一个banner.jpg、banner.png、banner.gif、banner.txt文件,banner.txt中填写好需要打印的字符串内容即可。

Banner生成工具

  • http://www.network-science.de/ascii/
  • http://www.kammerl.de/ascii/AsciiSignature.php
  • http://patorjk.com/software/taag/

banner占位符

${AnsiColor.BRIGHT_RED}:设置控制台中输出内容的颜色
${application.version}:用来获取MANIFEST.MF文件中的版本号
application.formatted−version:格式化后的{application.formatted-version}:格式化后的application.formattedversion{application.version}版本信息
${spring-boot.version}:Spring Boot的版本号
spring−boot.formatted−version:格式化后的{spring-boot.formatted-version}:格式化后的springboot.formattedversion{spring-boot.version}版本信息

关闭banner显示

1.配置文件

spring:
main:
banner-mode: off
banner输出模式支持3种:

  • CONSOLE:控制台输出,默认方式;
  • OFF:关闭;
  • LOG:日志输出方式;

2.Main启动

@SpringBootApplication
public class SpringBootBannerApplication {

    public static void main(String[] args) {
        SpringApplication springApplication = new SpringApplication(SpringBootBannerApplication.class);
        springApplication.setBannerMode(Banner.Mode.OFF);
        springApplication.run(args);
    }

}

3.编辑器关闭

在这里插入图片描述

<think>嗯,用户正在寻找banner”相关的库或组件,特别是在软件开发中使用。首先,我需要明确“banner”在这里指的是什么。通常,在软件开发中,banner可能指启动时的ASCII艺术字、控制台输出的横幅,或者是网页中的广告横幅组件。用户的需求可能涉及这两个方面,但需要进一步确认。 根据用户提供的引用内容,引用[1]提到了Go语言的库和框架列表,引用[2]涉及版本控制库,引用[3]是关于视觉导航系统的研究。但用户的问题这些引用似乎没有直接关联,可能需要更多的信息。不过,按照用户的要求,我需要结合现有引用内容来回答。 首先,考虑用户可能需要的是生成ASCII艺术字的库。例如,在Java中,有像FIGlet这样的库,可以生成各种风格的ASCII横幅。此外,Spring Boot有一个spring-boot-banner库,允许自定义启动时的banner。在Go语言中,可能也有类似的库,比如引用[1]提到的awesome-go列表中的相关项目。 另外,如果是前端开发中的广告横幅组件,可能需要使用React、Vue等框架的组件库。例如,Bootstrap可能有相关的组件,或者专门的库如vue-banner。但用户没有明确说明是前端还是后端的需求,所以需要涵盖这两种可能性。 接下来,需要检查提供的引用是否有相关内容。引用[1]提到awesome-python和awesome-go,可能包含相关库。例如,在Python中,有pyfiglet库,用于生成ASCII艺术字。引用[2]中的内容主要版本控制相关,可能不相关。引用[3]涉及视觉导航,可能广告横幅无关。 因此,综合来看,用户可能需要的是生成ASCII横幅的库或前端广告组件。需要分别列出不同编程语言中的相关库,并给出示例。同时,提醒用户明确具体需求,以便更精准地推荐。 另外,用户可能没有意识到banner的不同应用场景,需要解释两种可能性,并分别提供解决方案。例如,如果用户需要的是启动时的控制台banner,可以推荐Java的FIGlet或Spring Bootbanner库;如果是网页广告,可以推荐React组件或Bootstrap。 最后,生成相关问题,帮助用户进一步澄清需求或探索更多相关库,比如询问应用场景或特定语言的需求。</think>### 关于软件开发中Banner相关库组件的解答 在软件开发中,"banner"通常指两种场景: 1. **命令行/控制台输出**:程序启动时展示的ASCII艺术字或文本横幅 2. **前端界面组件**:网页/移动端展示的广告横幅或通知栏 #### 一、控制台Banner相关库 1. **Java生态** - `Spring Boot Banner`:内置支持自定义启动横幅 ```properties # 在application.properties中配置 spring.banner.location=classpath:banner.txt ``` - `FIGlet`:ASCII艺术字生成库,支持多种字体风格[^1] ```java // 示例代码片段 FigletFont font = FigletFont.loadFont("slant.flf"); System.out.println(font.renderText("Hello")); ``` 2. **Python生态** - `pyfiglet`:Python版FIGlet实现 ```python import pyfiglet result = pyfiglet.figlet_format("Python") print(result) ``` 3. **Go生态**(参考引用[1]) - `banner`:Go语言ASCII艺术生成库 ```go import "github.com/common-nighthawk/go-figure" myFigure := figure.NewFigure("Golang", "slant", true) myFigure.Print() ``` #### 二、前端Banner组件 1. **React生态** - `react-banner`:响应式广告横幅组件 - `react-notification-banner`:顶部通知栏组件 2. **Vue生态** - `vue-awesome-banner`:轮播广告组件 - `vuetify-alert`:Material风格通知组件 3. **通用解决方案** ```html <!-- Bootstrap横幅示例 --> <div class="alert alert-warning banner"> <strong>通知!</strong> 系统即将升级维护 </div> ``` #### 三、选择建议 - 命令行场景优先选择`FIGlet`系库(跨语言支持成熟) - Web广告横幅建议使用框架官方组件库(如React-Bootstrap) - 动态内容推荐结合WebSocket实现实时更新[^2]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值