spring boot 在控制台打印banner
转自
SpringBoot系列——花里胡哨的banner.txt - huanzi-qch - 博客园 (cnblogs.com)
<div id="cnblogs_post_body" class="blogpost-body blogpost-body-html">
<h2 id="_label_h20"> 前言<button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p> 我们注意到springboot项目启动时,控制台会打印自带的banner,然后对于部分IT骚年来说,太单调太普通太一般了;所以,是时候表演真正的技术了</p>
<p> </p>
<h2 id="_label_h21"> 项目结构<button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p> 我们只需要在springboot项目的resources文件夹下面创建一个banner.txt文件,springboot启动的时候会去加载这个文件,项目结构:</p>
<p><img src="https://img2018.cnblogs.com/blog/1353055/201811/1353055-20181106172258270-1259442361.png" alt="" class="medium-zoom-image"></p>
<p> </p>
<h2 id="_label_h22"> banner.txt<button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p> 这里有几个定制banner的网站,文字、图片都可以秀起来,怎么秀就看你的骚操作了</p>
<p> <a href="http://patorjk.com/software/taag" target="_blank" rel="noopener">http://patorjk.com/software/taag</a></p>
<p> <a href="http://www.network-science.de/ascii/" target="_blank" rel="noopener">http://www.network-science.de/ascii/</a></p>
<p> <a href="http://www.degraeve.com/img2txt.php" target="_blank" rel="noopener">http://www.degraeve.com/img2txt.php</a></p>
<p> </p>
<p> banner.txt的内容:</p>
<pre>${AnsiColor.BRIGHT_YELLOW} <br>//////////////////////////////////////////////////////////////////// <br>// _ooOoo_ // <br>// o8888888o // <br>// 88" . "88 // <br>// (| ^_^ |) // <br>// O\ = /O // <br>// ____/`---'\____ // <br>// .' \\| |// `. // <br>// / \\||| : |||// \ // <br>// / _||||| -:- |||||- \ // <br>// | | \\\ - /// | | // <br>// | \_| ''\---/'' | | // <br>// \ .-\__ `-` ___/-. / // <br>// ___`. .' /--.--\ `. . ___ // <br>// ."" '< `.___\_<|>_/___.' >'"". // <br>// | | : `- \`.;`\ _ /`;.`/ - ` : | | // <br>// \ \ `-. \_ __\ /__ _/ .-` / / // <br>// ========`-.____`-.___\_____/___.-`____.-'======== // <br>// `=---=' // <br>// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // <br>// 佛祖保佑 永不宕机 永无BUG //<br>//////////////////////////////////////////////////////////////////// </pre>
<p><img src="https://img2018.cnblogs.com/blog/1353055/201811/1353055-20181106172554326-79639619.png" alt="" class="medium-zoom-image"></p>
<p> banner.txt配置</p>
<p><code> ${AnsiColor.BRIGHT_RED}</code>:设置控制台中输出内容的颜色</p>
<p><code> ${application.version}</code>:用来获取<code>MANIFEST.MF</code>文件中的版本号</p>
<p><code> ${application.formatted-version}</code>:格式化后的<code>${application.version}</code>版本信息</p>
<p><code> ${spring-boot.version}</code>:Spring Boot的版本号</p>
<p> <code>${spring-boot.formatted-version}</code>:格式化后的<code>${spring-boot.version}</code>版本信息</p>
<p> </p>
<p> spring对banner的配置,来自springboot参考手册,Common application properties:<a href="https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/#common-application-properties" target="_blank" rel="noopener">https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/#common-application-properties</a></p>
<div class="cnblogs_code"><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div>
<pre><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> BANNER</span>
spring.banner.charset=UTF-<span style="color: rgba(128, 0, 0, 1)">8</span> <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Banner file encoding.</span>
spring.banner.location=classpath:banner.txt <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Banner text resource location.</span>
spring.banner.image.location=classpath:banner.gif <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Banner image file location (jpg or png can also be used).</span>
spring.banner.image.width=<span style="color: rgba(128, 0, 0, 1)">76</span> <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Width of the banner image in chars.</span>
spring.banner.image.height= <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Height of the banner image in chars (default based on image height).</span>
spring.banner.image.margin=<span style="color: rgba(128, 0, 0, 1)">2</span> <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Left hand image margin in chars.</span>
spring.banner.image.invert=false <span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> Whether images should be inverted for dark terminal themes.</span></pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div></div>
<p> </p>
<h2 id="_label_h23"> 效果 <button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p><img src="https://img2018.cnblogs.com/blog/1353055/201811/1353055-20181106172731074-2137398188.png" alt="" class="medium-zoom-image"></p>
<p> </p>
<h2 id="_label_h24"> 结束语<button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p> 秀儿,是你吗?</p>
<p> banner默认开启,如果不想让它打印怎么办?</p>
<p> 方法1,在main的run方法设置</p>
<div class="cnblogs_code"><div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div>
<pre><span style="color: rgba(0, 128, 0, 1)">/**</span><span style="color: rgba(0, 128, 0, 1)">
* 启动主类,springboot的入口
* springboot 默认扫描的类是在启动类的当前包和下级包
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
@SpringBootApplication
</span><span style="color: rgba(0, 0, 255, 1)">public</span> <span style="color: rgba(0, 0, 255, 1)">class</span><span style="color: rgba(0, 0, 0, 1)"> SpringbootWebsocketSpringdataJpaApplication {
</span><span style="color: rgba(0, 0, 255, 1)">public</span> <span style="color: rgba(0, 0, 255, 1)">static</span> <span style="color: rgba(0, 0, 255, 1)">void</span><span style="color: rgba(0, 0, 0, 1)"> main(String[] args) {
SpringApplication springApplication </span>= <span style="color: rgba(0, 0, 255, 1)">new</span> SpringApplication(SpringbootWebsocketSpringdataJpaApplication.<span style="color: rgba(0, 0, 255, 1)">class</span><span style="color: rgba(0, 0, 0, 1)">);
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">Banner.Mode.OFF 关闭</span>
<span style="color: rgba(0, 0, 0, 1)"> springApplication.setBannerMode(Banner.Mode.OFF);
springApplication.run(args);
}
}</span></pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div></div>
<p> 方法2,Edit Configurations --> 勾选Hide banner</p>
<p><img src="https://img2018.cnblogs.com/blog/1353055/201811/1353055-20181108102452583-1276364041.png" alt="" class="medium-zoom-image"></p>
<p> </p>
<h2 id="_label_h25"> 代码开源<button class="cnblogs-toc-button" title="显示目录导航" aria-expanded="false"></button></h2>
<p> 代码已经开源、托管到我的GitHub、码云:</p>
<p> GitHub:<a href="https://github.com/huanzi-qch/springBoot" rel="noopener">https://github.com/huanzi-qch/springBoot</a></p>
<p> 码云:<a href="https://gitee.com/huanzi-qch/springBoot" rel="noopener">https://gitee.com/huanzi-qch/springBoot</a></p>
</div>
spring boot 在控制台打印banner的更多相关文章
- spring boot中控制台打印sql日志
.properties文件 logging.level.com.example.demo.dao=debug .yml文件 # 打印sql logging: level: com.example.de ...
- 【spring boot】【mybatis】spring boot中mybatis打印sql语句
spring boot中mybatis打印sql语句,怎么打印出来?[参考:https://www.cnblogs.com/sxdcgaq8080/p/9100178.html] 在applicati ...
- .NET CORE与Spring Boot编写控制台程序应有的优雅姿势
本文分别说明.NET CORE与Spring Boot 编写控制台程序应有的“正确”方法,以便.NET程序员.JAVA程序员可以相互学习与加深了解,注意本文只介绍用法,不会刻意强调哪种语言或哪种框架写 ...
- spring boot mybatis sql打印到控制台
如何设置spring boot集成 mybatis 然后sql语句打印到控制台,方便调试: 设置方法: 在application.properties文件中添加: logging.level.com. ...
- Spring Boot 设置启动时banner
Spring Boot项目再启动的时候默认会在控制台输出一个字符banner图案,如下图: 我们可以通过下面的方法关闭启动时显示字符banner图案: 关闭banner方法一: public stat ...
- Spring Boot 中如何定制 Banner
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...
- spring boot在控制台输出彩色日志
阅读org.springframework.boot.context.config.AnsiOutputApplicationListener 源码发现,通过向JVM传递参数,可以在控制台打印彩色日志 ...
- spring boot 源码之banner
Banner 使用Spring Boot启动的jar包总是会显示一个Spring的图标.实际我们是可以自定义这个图标.Banner接口定义了打印banner的方法. void printBanner( ...
- Spring boot使用log4j打印日志
先将maven中spring-boot-starter的日志spring-boot-starter-logging去掉 <dependency> <groupId>org.sp ...
随机推荐
- 使用React实现一个TodoList案例
1.效果图: 2.项目源码 3.源码 TodoList.js import React, { Component, Fragment } from 'react'; import TodoItem f ...
- JavaScript实现按钮改变网页背景色
运行效果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...
- js获取url查询字符串参数
最近看js高级程序设计 对其中查询字符串参数的获得重新写了,当传递一个完整的URL的时候对查询字符串的提取 function getQueryArgs(){ var qs = (location.se ...
- Python接口自动化——文件上传/下载接口
〇.前言 文件上传/下载接口与普通接口类似,但是有细微的区别. 如果需要发送文件到服务器,例如:上传文档.图片.视频等,就需要发送二进制数据,上传文件一般使用的都是 Content-Type: mul ...
- 动态代理-JDK
代理模式:假设一个场景,你的公司是一位软件公司,你是一位软件工程师,显然客户带着需求不会去找你谈,而是去找商务谈,此时商务就代表公司. 商务的作用:商务可以谈判:也有可能在开发软件之前就谈失败,此时商 ...
- 生成swap分区之利用磁盘分区
生成swap 分区方式很多,有利用磁盘分区来生成swap,这种效率比较高,他并不是文件系统, 另外我们还可以拿出磁盘一些空间,做成swap分区还有通过lvm逻辑卷的方式创建swap分区(这种分区就可以 ...
- Codeforces Round #719 (Div. 3) C. Not Adjacent Matrix
地址 Problem - C - Codeforces 题意 每个格子,该格子和相邻的格子的值不能相同 题解 思维题, 先从1~n输出奇数,再输出偶数 代码 #include <iostream ...
- C# 中托管内存与非托管内存之间的转换
c#有自己的内存回收机制,所以在c#中我们可以只new,不用关心怎样delete,c#使用gc来清理内存,这部分内存就是managed memory,大部分时候我们工作于c#环境中,都是在使用托管内存 ...
- java class 文件格式解析
前言 大约5年前,想研究javaassistant,cglib等字节码操作的相关类库,来对class进行增强,当要到要操作字节码的时候,发现无法继续下去了,只能放弃. 学习jvm字码,需要理解clas ...
- 使用钡铼BL102网关连接西门子S7-1200PLC 以及mosquitto服务器方法
一.软硬件描述 西门子PLC S7-1215 钡铼BL102网关 mosquitto MQTT服务器(腾讯云上搭建) 可以上网的路由器一套 二.需要使用的软件. 西门子Portal v15.1 (西门 ...