Springboot(7)——springboot实现自定义banner.txt图

实现的方式非常简单,我们只需要在Spring Boot工程的/src/main/resources目录下创建一个banner.txt文件,然后将ASCII字符画复制进去,就能替换默认的banner了。
下面打印一下hello word

Springboot(7)——springboot实现自定义banner.txt图

从上面的内容中可以看到,还使用了一些属性设置:

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

生成ASCII字符画的地址

简单的说下底层实现

我用的是springboot1.5.13, 其他版本也是大同小异
开发工具是idea(我喜欢直接用idea看源码)
首先打开我们的springboot1.5.13如下图
Springboot(7)——springboot实现自定义banner.txt图
Springboot(7)——springboot实现自定义banner.txt图

这里的SpringApplicationBannerPrinter类就是关于在程序启动阶段banner图输出的,我们来看下源码吧!

Springboot(7)——springboot实现自定义banner.txt图

上面的代码片段截取可以看出默认配置banner图的文件名称是banner.txt默认获取路径是根目录。看到这就应该恍然大悟为什么banner.txt需要放在根目录下了吧。

在来看下他的源码片段是怎么获取输出的

Springboot(7)——springboot实现自定义banner.txt图Springboot(7)——springboot实现自定义banner.txt图

上面的源码中我加入了自己的理解注释,有不妥的地方请指正,互相学习是最快的进步方式。(一个banner.txt其实是没有必要深究的,哈哈,但是也能让我们看出一点springboot启动加载的原理)