返回顶部
首页 > 资讯 > 精选 >SpringBoot中banner怎么使用
  • 539
分享到

SpringBoot中banner怎么使用

2023-06-08 04:06:37 539人浏览 八月长安
摘要

这篇文章主要介绍“SpringBoot中banner怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot中banner怎么使用”文章能帮助大家解决问题。制作自己的banner第

这篇文章主要介绍“SpringBoot中banner怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springBoot中banner怎么使用”文章能帮助大家解决问题。

制作自己的banner

第一步:在src/main/resources下面创建banner.txt。

第二步:访问网站 Http://patorjk.com/software/taag,在网站“Type Something ”处输入想要制作的单词(比如:Hello World),会生成对应的字符。也可以通过其他参数来调整字符的样式。

SpringBoot中banner怎么使用

复制生成的字符,粘贴到banner.txt,再次启动程序便可以打印出指定的banner了。

个人比较喜欢的banner是如下图形:

${AnsiColor.BRIGHT_YELLOW}//////////////////////////////////////////////////////////////////////             _ooOoo_                ////             o8888888o               ////             88" . "88               ////             (| ^_^ |)               ////             O\ = /O               ////           ____/`---'\____              ////          .' \\|   |// `.             ////          / \\||| : |||// \            ////         / _||||| -:- |||||- \            ////         |  | \\\ - /// |  |            ////         | \_| ''\---/'' |  |            ////         \ .-\__ `-` ___/-. /            ////        ___`. .' /--.--\ `. . ___           ////       ."" '< `.___\_<|>_/___.' >'"".         ////      | | : `- \`.;`\ _ /`;.`/ - ` : | |         ////      \ \ `-.  \_ __\ /__ _/  .-` / /         ////   ========`-.____`-.___\_____/___.-`____.-'========     ////              `=---='               ////   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^    ////      佛祖保佑    永不宕机   永无BUG         //////////////////////////////////////////////////////////////////////

在新版本的SpringBoot中,支持了gif、jpg和png的图片形式的banner打印。当然,并不会把图片直接打印在控制台,而是将其像素解析转换成assii编码之后打印。

对于gif动图,会把动图的每个图片都打印出来,如果动图比较大,打印时间较长。可以尝试一下,但建议不要使用gif。

在banner.txt中,还可以进行一些设置,比如上图中的${AnsiColor.BRIGHT_YELLOW}。

  • AnsiColor.BRIGHT_RED:设置控制台中输出内容的颜色

  • application.version:用来获取MANIFEST.MF文件中的版本号

  • application.fORMatted-version:格式化后的application.version版本信息

  • spring-boot.version:Spring Boot的版本号

  • spring-boot.formatted-version:格式化后的spring-boot.version版本信息

Banner接口

在未指定banner.txt或banner图片时,默认图形存储在哪里了呢?下面我们了解一下Banner接口。

@FunctionalInterfacepublic interface Banner {  // 打印banner  void printBanner(Environment environment, Class<?> sourceClass, PrintStream out);  enum Mode {    // 关闭    OFF,    // 控制台    CONSOLE,    // 日志文件    LOG  }}

在banner接口中提供了打印banner的方法和一个枚举类。枚举类有三个值:OFF、CONSOLE、LOG,用来控制banner的打印,分别对应:关闭打印、控制台打印和日志打印。

banner接口的实现主要有ResourceBanner、ImageBanner、SpringBootBanner和其他内部类的实现。其中上面看到的图形的打印就来自于SpringBootBanner。看一下源代码:

class SpringBootBanner implements Banner {  private static final String[] BANNER = { "",      " .  ____     _      __ _ _",      " /\\\\ / ___'_ __ _ _(_)_ __ __ _ \\ \\ \\ \\",      "( ( )\\___ | '_ | '_| | '_ \\/ _` | \\ \\ \\ \\",      " \\\\/ ___)| |_)| | | | | || (_| | ) ) ) )",      " ' |____| .__|_| |_|_| |_\\__, | / / / /",      " =========|_|==============|___/=/_/_/_/" };  private static final String SPRING_BOOT = " :: Spring Boot :: ";  private static final int STRAP_LINE_SIZE = 42;  @Override  public void printBanner(Environment environment, Class<?> sourceClass,      PrintStream printStream) {    for (String line : BANNER) {      printStream.println(line);    }    String version = SpringBootVersion.getVersion();    version = (version != null) ? " (v" + version + ")" : "";    StringBuilder padding = new StringBuilder();    while (padding.length() < STRAP_LINE_SIZE        - (version.length() + SPRING_BOOT.length())) {      padding.append(" ");    }    printStream.println(AnsiOutput.toString(AnsiColor.GREEN, SPRING_BOOT,        AnsiColor.DEFAULT, padding.toString(), AnsiStyle.FAINT, version));    printStream.println();  }}

在printBanner的方法实现中,首先打印了默认的Banner字符串数组,然后将SPRING_BOOT和版本信息进行拼接打印。

Banner的参数设置

banner的参数设定可以通过两种形式,一种是代码的形式,一种是配置文件的形式。

使用代码的形式首先要将默认的main方法进行改造,手动创建SpringApplication对象,然后设置相应的参数。示例代码:

public static void main(String[] args) {  SpringApplication app = new SpringApplication(SpringbootBannerApplication.class);  app.setBannerMode(Banner.Mode.CONSOLE);  Banner banner = new ImageBanner(new ClassPathResource("banner1.png"));  app.setBanner(banner);  app.run(args);}

通过配置文件设置就比较简单,直接在application.properties中进行配置,springboot已经帮我们预制好了相应的参数。

spring.banner.location=classpath:banner1.pngspring.banner.image.margin=2spring.banner.image.height=76spring.banner.charset=UTF-8spring.banner.image.invert=falsespring.banner.image.location=banner1.pngspring.main.banner-mode=consolespring.main.show-banner=true

其中spring.main.show-banner来控制是否打印banner,在新版本中不建议使用,可以使用spring.main.banner-mode代替,将其值设置为OFF即可关闭banner的打印。

引入文本banner通过spring.banner.location来指定,引入图片相关的banner需要通过spring.banner.image.location来指定路径,否则会出现乱码情况。

如果不想显示banner,可以在代码中通过setBannerMode(Banner.Mode.OFF)方法或通过参数配置spring.main.banner-mode=off来关闭banner的打印。上面示例中已经有所展示。

关于“SpringBoot中banner怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: SpringBoot中banner怎么使用

本文链接: https://www.lsjlt.com/news/251850.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SpringBoot中banner怎么使用
    这篇文章主要介绍“SpringBoot中banner怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot中banner怎么使用”文章能帮助大家解决问题。制作自己的banner第...
    99+
    2023-06-08
  • Banner怎么在SpringBoot中使用
    今天就跟大家聊聊有关Banner怎么在SpringBoot中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Spring Boot在启动项目时,控制台会打印一个Spring的log...
    99+
    2023-05-30
    springboot banner
  • SpringBoot详解Banner的使用
    Banner的设置方式有以下几种 1、默认:SpringBoot + 版本号; 2、添加自定义资源文件:banner.txt; 3、添加自定义资源文件:banner.jpg/png/...
    99+
    2024-04-02
  • 怎么使用Android banner
    本篇内容主要讲解“怎么使用Android banner”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Android banner”吧!效果图:添加依赖  implem...
    99+
    2023-06-25
  • 教你怎么用Springboot自定义Banner图案
    目录一、前言二、实现原理三、默认 Banner 实现类四、ImageBanner五、ResourceBanner六、SpringBootBanner七、实现 Banner 类八、Ba...
    99+
    2024-04-02
  • Springboot应用如何自定义Banner
    Springboot应用如何自定义Banner,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。这个小功能据说是Springboot2.x的小...
    99+
    2024-04-02
  • Android 中Banner的使用详解
    首先倒入一个依赖: compile 'com.youth.banner:banner:1.4.9' 添加的权限: <uses-permission android:n...
    99+
    2022-06-06
    Android
  • Android中banner的使用步骤
    Step 1.依赖banner Gradle dependencies{ compile 'com.youth.banner:banner:1.4.9' //最新版本 }...
    99+
    2022-06-06
    Android
  • Springboot中如何自定义Banner图案
    这篇文章给大家介绍Springboot中如何自定义Banner图案,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、前言我们在启动 Spring Boot 项目时,默认会在控制台打印 Spring logo 和版本等信...
    99+
    2023-06-15
  • Banner如何在Android应用中使用
    这期内容当中小编将会给大家带来有关Banner如何在Android应用中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。首先倒入一个依赖: compile 'com.youth.banner:b...
    99+
    2023-05-31
    android banner roi
  • SpringBoot中怎么使用FreeMarker
    这篇文章主要介绍“SpringBoot中怎么使用FreeMarker”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot中怎么使用FreeMarker...
    99+
    2024-04-02
  • springboot中redis怎么使用
    在Spring Boot中使用Redis,可以使用以下步骤:1. 添加依赖:在`pom.xml`文件中添加Redis的依赖:```x...
    99+
    2023-09-04
    springboot redis
  • SpringBoot中@SessionAttributes怎么使用
    本文小编为大家详细介绍“SpringBoot中@SessionAttributes怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“SpringBoot中@SessionAttributes怎么使用”文章能帮助大家解决疑惑,下面跟着小...
    99+
    2023-07-02
  • SpringBoot中怎么使用@ConfigurationProperties
    这篇文章主要介绍“SpringBoot中怎么使用@ConfigurationProperties”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot中怎么使用@Configuratio...
    99+
    2023-07-04
  • SpringBoot中怎么使用WebSocket
    在Spring Boot中使用WebSocket可以通过以下步骤实现: 首先添加WebSocket依赖: 在pom.xml文件中添...
    99+
    2024-03-07
    SpringBoot WebSocket
  • 怎么在Springboot中使用mybatis
    今天就跟大家聊聊有关怎么在Springboot中使用mybatis,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前期工作1.导入mybatis整合依赖<!-- &nb...
    99+
    2023-06-14
  • Redisson怎么在SpringBoot中使用
    今天就跟大家聊聊有关Redisson怎么在SpringBoot中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Redisson、Jedis、Lettuce优缺点对比(1)Redi...
    99+
    2023-06-15
  • 怎么在SpringBoot中使用nacos
    怎么在SpringBoot中使用nacos?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、什么是nacosnacos支持基于dns和基于rpc的服务发现,可以作为spri...
    99+
    2023-06-15
  • rabbitmq怎么在springboot中使用
    rabbitmq怎么在springboot中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。概述RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的...
    99+
    2023-05-30
    springboot rabbitmq
  • SpringBoot中ApplicationEvent和ApplicationListener怎么使用
    本篇内容主要讲解“SpringBoot中ApplicationEvent和ApplicationListener怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SpringBoot中App...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作