SpringBoot使用动态Banner

SpringBoot使用动态Banner

Spring Boot 2.0 提供了很多新特性,其中就有动态 Banner。

1、pom依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.0.RELEASE</version></parent><groupId>com.example</groupId><artifactId>spring-boot-banner</artifactId><version>0.0.1-SNAPSHOT</version><name>spring-boot-banner</name><description>spring-boot-banner</description><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

2、启动类

package com.example;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}}

3、更换Banner

我们先来回顾一下在 Spring Boot 1.0 中如何更换启动 Banner,其实都很简单,只需要在

src/main/resources路径下新建一个banner.txt文件,banner.txt中填写好需要打印的字符串内容即可。

一般情况下,我们会借助第三方工具帮忙转化内容:

如网站http://www.network-science.de/ascii/将文字转化成字符串

在这里插入图片描述

如网站http://www.degraeve.com/img2txt.php可以将图片转化成字符串

在这里插入图片描述

在这里插入图片描述

我们以Hello World为启动字符串来进行测试:

.__           .__  .__                               .__       .___
|  |__   ____ |  | |  |   ____   __  _  _____________|  |    __| _/
|  |  \_/ __ \|  | |  |  /  _ \  \ \/ \/ /  _ \_  __ \  |   / __ | 
|   Y  \  ___/|  |_|  |_(  <_> )  \     (  <_> )  | \/  |__/ /_/ | 
|___|  /\___  >____/____/\____/    \/\_/ \____/|__|  |____/\____ | \/     \/                                                  \/ 

在 Spring Boot 2.0 项目src/main/resources路径下新建一个banner.txt文件,粘贴上述字符串,启动 Spring

Boot 项目观察启动日志,发现 Spring Boot 2.0 已经将默认的 Spring 字符串替换为 hello world。说明 Spring

Boot 2.0 也支持1.0更换 Banner 的方法。

接下来在 Spring Boot 2.0 项目中测试打印动态 Banner ,使用的gif如下:

在这里插入图片描述

同样我们将 banner.gif 文件放到项目的src/main/resources路径下,启动项目进行测试,输出栏打印信息如

下:

                                           .,ijtjjjjtti,.                                           ijttttttjjttttttttji                                        ;tjttttttttttjjjjttjtjjjj;                                     jjtttttjttjtttttijjittjjttttjj.                                  .ijttttjittjjtttjtjjtttjtjtttjtjjjt.                                ijttttttjttjjttttjttitttttjijtjjttttji.          .:                  itttttttttjtttijjttttttttttjtttttjtjttttti         tt                  .jttttttttttjtjtttjjttttjtjjttjjtttttttjjttjj:       jt                  ,tttttttttttjttttjttjttjtjtjtttttjtjtttttjttttj;     ,tt,                 ;jtttttjttttttttitttttttttttttjttttttttttjjttjjtji    j:jt                 ,jttjjttttjtttjjtttjtjjtjttjijtitjjjttttttjtjtjjiti,  ij tt                 ttjjtttttttttttjttjjtttjtttjjtttjjtjtttjjttjjjtjtitttttj: .j,                tjjjittjtttttttjtjjtjtttttttttjjtjjtjttttttjjjjjtjjjtttt;   jt                itjttttjttttttjtttjttjttjttttjtjtjjtjjjjitijtttjtjjtjtttt    it                ;jtttjtttttttttttttttttttjttjtttttttjjjtttttjtjittjtjjttt     ,j:               jjtjtttttjttttttjttttttttjjtttttttttttjjjttiijtjtjttittj.      ji               ;tjtttttttttjtttttjttttttttjjjtjjtttttjjtjttttjtititjttt.       tj               ;tjjtjtttttttttttttttttttjtttttjjtttttjjtttjjjtjttjtjtjt         ,t               jittttjtttjtttttttttjttttjttttttjjttttjjtjtjijittjtttj;          .j.              tjtjtttttjttjttttjtttjttjtttttttitttttttjttjtttjtttjtt:            t:              :tttttttjtttttjttjjjjttttttttjjjtttttttttjttjjjjtttttj              ii              ttttjtjtttjjttjttttjttttttttttttjtttjjtttttttttjttjji               :j              ittttjtttjjttjtjtjttjtttjjttttjtttjttttttjtttttjtji                   j.             jtttttijtjjttjtjttitjtttttttttjijtjjjttttttttitjt:                    t,             ttttttttijjitttjjtjjtjtjtttttjjjttittjtttjtjjt,                       ji             ,tjjtttjtjjjjttjttijjtitttttttjtjtttttittjji,.                         tt             tjttjjjtjttititjtttttjjijjtjtjjtttii;,:.                               tj             jjjjjtjjjjtjttjjttijittjjj;:                                           ;j.            ,jjjtttttjtjttttttittjt:                                                :t,            ttijtjtjtjtjtjtttjjtj;                                          :        j;            jtttjtjjjtjtttttjtjt                                            .        ji            .tttjjjtjtjtttttttt,                                            ;         jt            :tttjtttttttjttttj                                              i         jj            ;ttjjtjijttjtjttj.                                             t.         tj.           ittjittjjttttttj.                                              t          tj.           tttjjjtjttttttj:                                              ;:          tj.           ttttttttittttti                                              .j           ij.           tjtjtjjttttttj.                                              jt           tj.           tjtjjjjttjjtj.                                             .jt            tj.           jttttttttjttj                                              tt;            tj.           tjtttjtttttjt                                             tjt             tj.           ttttttttjttt;                                             jt:             jt            iijjtttttttt.                                            jj;              jt            ;jtjtjtttjtj                                            tjj               ji            :tijjtjjtjjt                                          tjtj               ;j,            .jttttjtjiji                                         tttj;               tj.            jtjjtttttj;                                        ijtti                jj.            tttjtjttjj;                                      .tjtjt                 tt             ;jjjtttttji                                     :jtjji                 .ti             jtttttttjt                                    jjttj:                  tj.             ttttijtjjj                                  ;jtjjti                   jt              :jtttjtttt.                               ;tjtjtj;                   ij,              ttijtttjj;                             .tjttttj,                    jj.              jtjjtttttt                           ,tjttjjtj                     ttt               ;jttttttjt                         ijjtttjjtj                     :jjt               tjjjttjtti                   :ijjjtjjttjjt:                     :jjj                :ttttttttj,               ,ijttttjtjtijj,                       jtj;                tjtjttjtjj:          :;jjtjtjttitjttjt                        itjt                 ttjttttjtj;     .ijjttttjjttttttjji                         tjjt:                 ;ittjjtjtttj,tjjttjttttttttjjtjj,                          jtjjt                  ;tttjjtjttttjtttttjjtttttjt;                           .jjjjtt                   jttiji. ;ttjjjtttttttjt;                            :tjttttj                    ;tjjt     jtjjijtttj;                             ;jttttttti                    ijt:     jtitttji.                           :;jjjtjtttttt                     tj      jtttt::;iiitiitii;;;;,,,,,,,,;iitjjjttttjttjjttt.                     t      tjttttjjjtttttttjjjtttjtttjtttttjjjjttjtjtjjjtj.                      :     tittjtttjtjtjjjtjitttjtjttjjtjttjjtjjttjjtjtj,                        :  :jtttjtttjjjtttttttjtjtttttjjjtttjjjttjttjjtttt                         ,jttttjjtjjjjtitjtjttjjjtjtjttitjttjttttjjtjjjj;                          jjittjtjtjjjjjtttjtttjttjtttttjjttjjjtttttjt.                           ;ttijtjttjtjttttjjjtttttjjtjttijtjttttjtji                             itttjtjtjtttttttttjtttjjttjtjjjttttijt.                              .ijjtjttjjtjtjittttttittjjjjjjttttt.                                tjjtjjtjttjtjjtjtjttjtttjtjtjt.                                  ;jjttjjjtttittttitttttttji                                     itjjtttjjjtitttjtjji                                        .,ittjjjjtti,:                                 

通过上述输出我们发现 Spring Boot 在启动的时候,会将 gif 图片的每一个画面,按照顺序打印在日志中,所有的

画面打印完毕后,才会启动 Spring Boot 项目。

如果目录src/main/resources下同时存在banner.txtbanner.gif,项目会先将banner.gif每一个画面打

印完毕之后,再打印banner.txt中的内容。

项目的启动 Banner 有什么用呢,在一些大的组织或者公司中,可以利用这个特性定制自己专属的启动画面,增加

团队对品牌的认同感。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/228688.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

进程和线程的关系

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;JavaEE &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 进程&线程 1. 什么是进程PCB 2. 什么是…

算法 离散化

整数离散化 适用条件 适用于有序的整数序列该序列的值域很大&#xff0c;该序列的数的个数很少使用的是数的相对大小而非绝对大小 算法思路 原数组 a &#xff1a; 数组下标&#xff1a;0 1 2 3 4 数组元素&#xff1a;1 2 2 5 109 映射数组 &#xff1a; 数组下标&…

SVD recommendation systems

SVD recommendation systems 为什么在推荐系统中使用SVD 一个好的推荐系统一定有小的RMSE R M S E 1 m ∑ i 1 m ( Y i − f ( x i ) 2 RMSE \sqrt{\frac{1}{m} \sum_{i1}^m(Y_i-f(x_i)^2} RMSEm1​i1∑m​(Yi​−f(xi​)2 ​ 希望模型能够在已知的ratings上有好的结果的…

【Rust】所有权的认识

所有权 所有程序都必须管理其运行时使用计算机内存的方式。一些语言中具有垃圾回收机制&#xff0c;在程序运行时有规律地寻找不再使用的内存&#xff1b;在另一些语言中&#xff0c;程序员必须亲自分配和释放内存。 Rust 则选择了第三种方式&#xff1a;通过所有权系统管理内…

【浅尝C++】C++类的6大默认成员函数——构造、析构及拷贝构造函数

&#x1f388;归属专栏&#xff1a;浅尝C &#x1f697;个人主页&#xff1a;Jammingpro &#x1f41f;记录一句&#xff1a;好想摆烂&#xff0c;又好想学习~~ 文章前言&#xff1a;本篇文章简要介绍C类的构造函数、析构函数及拷贝构造函数&#xff0c;介绍每个小点时&#xf…

Mysql中的引擎介绍(InnoDB,MyISAM,Memory)

MySQL引擎就是指表的类型以及表在计算机上的存储方式。 MySQL数据库及其分支版本主要的存储引擎有三种&#xff0c;分别是 InnoDB、MyISAM、 Memory&#xff0c;还有一些其他的&#xff0c;CSV、Blackhole等&#xff0c;比较少见&#xff0c;可以使用SHOW ENGINES语句来查看。结…

【ShardingSphere专题】SpringBoot整合ShardingSphere(一、数据分片入门及实验)

目录 前言阅读对象笔记正文一、ShardingSphere介绍1.1 ShardingSphere-JDBC&#xff1a;代码级别1.2 ShardingSphere-Proxy&#xff1a;应用级别1.3 横向对比图 二、ShardingSphere之——数据分片2.1 基本介绍2.2 分片的形式2.2.1 垂直分片2.2.2 水平分片 2.3 数据分片核心概念…

揭开 BFC 的神秘面纱:前端开发必知必会

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

DS八大排序之直接插入排序和希尔排序

前言 我们前面几期介绍了线性和非线性的基本数据结构。例如顺序表、链表、栈和队列、二叉树等~&#xff01;本期和接下来的几期我们来详解介绍各个排序的概念、实现以及性能分析&#xff01; 本期内容 排序的概念以及其运用 常见的排序算法 直接插入排序 希尔排序 一、排序的…

利用Spring Boot构建restful web service的详细流程

本文档构建一个简单的restful webservice&#xff0c; 在官网原文Getting Started | Building a RESTful Web Service (spring.io)的基础上进行操作 文章目录 一、项目创建流程1.1 创建项目1.2 创建资源表示类1.3 创建资源控制类 二、项目运行参考资料 一、项目创建流程 本文的…

Android flutter项目 启动优化实战(一)使用benchmark分析项目

背景描述 启动时间是用户对应用的第一印象&#xff0c;较慢的加载会对用户的留存和互动造成负面影响 在刚上线的B端项目中&#xff1a; 1.提高启动速度能提高整体流程的效率 2.提高首次运行速度能提高应用推广的初体验效果 问题描述 项目刚上线没多久、目前存在冷启动过程存在…

前端面试灵魂提问

1.自我介绍 2.在实习中&#xff0c;你负责那一模块 3.any与unknow的异同 相同点&#xff1a;any和unkonwn 可以接受任何值 不同点&#xff1a;any会丢掉类型限制&#xff0c;可以用any 类型的变量随意做任何事情。unknown 变量会强制执行类型检查&#xff0c;所以在使用一个…