SpringBoot系列教程10--小花样之SpringBoot配置自定义Banner

作者:一一哥

一. Spring Boot 常用配置

本章节主要介绍一下 Spring Boot 中的一些常用配置,比如:自定义 Banner、配置日志、关闭特定的自动配置等.

在进行配置之前,我们还是结合之前的文章,先创建一个SpringBoot项目,然后进行本章节的学习。

二. 自定义 Banner

在 Spring Boot 启动的时候会有一个默认的启动图案,被称为Banner。
默认的Banner效果如下:

.   ____          _            __ _ _/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/  ___)| |_)| | | | | || (_| |  ) ) ) )'  |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot ::        (v1.5.8.RELEASE)

这个Banner是Spring Boot自带的,如果我们觉得不好看,是可以更改的,作为一个资深的码农,怎么可以不定制一个自己的Banner呢?

1.新建一个banner.txt

我们在 src/main/resources 目录下新建一个 banner.txt

我们可以通过 http://patorjk.com/software/taag 这个网站,来生成自定义的banner字符串,将网站生成的字符复制到 banner.txt 中就可以啦.

2.再次运行这个程序,控制台出现如下界面.

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

3.常用Banner设置属性

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

4.Banner其他配置

我们可以在application.properties中,进行一些banner的基本属性配置。

我们在src/main/resources目录下,创建一个application.properties配置文件,在该文件中可以添加如下配置信息:

# BANNER
#Banner file encoding.
spring.banner.charset=UTF-8
#Banner text resource location.
spring.banner.location=classpath:banner.txt
#Banner image file location (jpg or png can also be used).
spring.banner.image.location=classpath:banner.gif
#Width of the banner image in chars.
spring.banner.image.width=76
#Height of the banner image in chars (default based on image height).
spring.banner.image.height=
#Left hand image margin in chars
spring.banner.image.margin=2
#Whether images should be inverted for dark terminal themes.
spring.banner.image.invert=false

这些配置信息,主要是对banner的宽度高度等属性进行设置。

5.关闭Banner

如果我们不想启动项目的时候展示Banner,也可以关闭掉,毕竟这东西没啥作用,典型的属于奇技淫巧。

5.1 代码方式关闭

我们可以在Application入口类中设置Banner的启动模式,默认是开启的,可以关闭掉。

@SpringBootApplication
public class BannerApplication {public static void main(String[] args) {//SpringApplication.run(BannerApplication.class, args);SpringApplication application=new SpringApplication(BannerApplication.class);//设置banner模式,不需要打印banner可以关闭,默认是开启的application.setBannerMode(Banner.Mode.CONSOLE);application.run(args);}
}

通过调用setBannerMode()方法,可以设置将banner打印console,log,或者不输出off。

5.2 yml文件配置

我们也可以在yml文件中,设置banner的模式,注意在yml文件中,会将off映射为false,并且需要给off添加括号:

spring:main:banner-mode: "off"

5.3 配置方式关闭

这种方式就不用每次都写代码了,可以在每个项目的Edit Configurations中的spring boot选型里,找到Hide Banner,勾选,就可以关闭了!

最终的项目结构,可以参考如下图!

SpringBoot2.x系列教程10--小花样之SpringBoot配置自定义Banner相关推荐

  1. springboot banner在线生成_SpringBoot系列教程10--小花样之SpringBoot配置自定义Banner

    SpringBoot系列教程10--小花样之SpringBoot配置自定义Banner 作者:一一哥 一. Spring Boot 常用配置 本章节主要介绍一下 Spring Boot 中的一些常用配 ...

  2. SpringBoot2.x系列教程(三十七)SpringBoot web之网站图标(Favicon)配置

    正常情况下,每个网站都会有一个对应的网站图标(Favicon),在浏览器访问网站时,对应的浏览器标签上会出现对应的图标.如下图百度的图标: 对此Spring Boot项目也提供了支持,但不同版本有所区 ...

  3. SpringBoot2.x系列教程75--SpringBoot整合JPA、Redis实现分布式的Session共享

    SpringBoot2.x系列教程75--SpringBoot整合JPA.Redis实现分布式的Session共享 一.SpringBoot整合JPA.Redis实现分布式的Session共享 1. ...

  4. STM32 基础系列教程 10 - 单线串口(半双工)

    前言 在工程应用中,很多时间为了方便走线会采用单线串口方案,本节将学习stm32 usart单线串口的使用,学会用使用单线串口收发数据. 示例详解 基于硬件平台: STM32F10C8T6最小系统板, ...

  5. SpringBoot2.x系列教程38--整合JAX-RS之利用Jersey框架实现RESTful

    SpringBoot2.x系列教程38--整合JAX-RS之利用Jersey框架实现RESTful 作者:一一哥 一. JAX-RS与Jersey简介 1. JAX-RS简介 在Java EE 6 中 ...

  6. SpringBoot专栏 | SpringBoot2.x系列教程之花样配置--自定义Banner

    前言 在前面的几个章节中,壹哥 带大家认识了SpringBoot的由来.优缺点,以及在SpringBoot中创建Web项目的3种方式. 既然我们现在已经把SpringBoot项目创建出来了,那么Spr ...

  7. SpringBoot2.x系列教程11--小花样之SpringBoot其他常用配置

    SpringBoot系列教程11--小花样之SpringBoot其他常用配置 作者:一一哥 一. 修改端口号和访问路径 在Spring Boot 项目中会使用一个全局的配置文件application. ...

  8. delphi switch语句例子_「GCTT 出品」Go 系列教程——10. switch 语句

    Go语言中文网,致力于每日分享编码知识,欢迎关注我,会有意想不到的收获! Go 系列教程是非常棒的一套初学者教程,入门就它了. 「GCTT 出品」Go 系列教程--1. 介绍与安装 「GCTT 出品」 ...

  9. 树莓派开发系列教程10——树莓派spi液晶屏支持(fbtft)

        树莓派官方支持av及HDMI输出,板子上预留了一个csi接口的液晶显示屏,但是一直没有相应的模组出现.在很多应用场合我们需要一些小型的液晶屏显示一些基本的信息,所以小屏驱动很是必要. 在git ...

最新文章

  1. 让asp.net程序在修改web.config后不重启
  2. N!的尾部连续0的个数
  3. 全栈Python 必备库
  4. 武汉大学一学生,用python敲出樱花开放 | 附源码
  5. MFC中 CArray(template)的应用
  6. php 导出tables,jquery+php实现导出datatables插件数据到excel的方法_php技巧
  7. 2.算法通关面试 --- 堆栈和队列
  8. 人生苦短我要学python壁纸_人生苦短我学Python——环境安装
  9. linux socket 开源库,linux c websocket开源库libwebsockets的编译和使用-Go语言中文社区...
  10. u-boot 设置mac 地址
  11. Unity 录制简单的动画
  12. ffmpeg推流及python管道控制ffmpeg推流
  13. FastStone Capture 7.7 截图工具下载地址及使用
  14. GNSS北斗高精度定位终端_一体化接收机
  15. wps怎么利用c语言编辑,WPS如何转换成图片?三种方法帮你实现
  16. 前端开发IDE---VSCode前端开发环境配置
  17. Apple Music 推出空间音频和无损音频
  18. 整理一些前端模版比较好的网站
  19. 把 14 亿人都拉到一个微信群,在技术上能实现吗?
  20. MYSQL之如何列转行

热门文章

  1. 测试员就是“背锅侠”?学会这些,扔掉测试人常背的3口“锅”
  2. html百度地图api 截图,百度地图(截图)
  3. 配置路由器IP及测试连通性
  4. 使用js乘法 精度错乱 使用Decimal插件处理格式问题
  5. 英语基础太差,能学好编程吗?
  6. prooerties mysql_mysql数据库操作相关知识--读书笔记分享
  7. crypto 抄错的字符
  8. Android手机扫描,电脑复制内容----手机实现无线扫码枪功能
  9. 魁拔妖侠传 之 浮云骑士语录
  10. 第2次实验——算法基本功 与 综合思考