查看原文
其他

Springboot 居然可以设置动态的 banner !!(悄悄滴~)

Java4ye Java4ye 2022-09-04

今天是大年初二啦! 给小伙伴们拜个年 ~  

先给小伙伴们留个悬念 嘿嘿 文末有神秘代码~ (大家可以猜猜用来干嘛滴先


嘿嘿 不知道过年这两天大家过得怎样呀~

比如

春晚抢到了多少红包呀?😄  

有木有和喜欢的人一起跨年呀ヾ(≧▽≦*)o 😝

吃腻了大鱼大肉没~  😄

开始学习了没 😊

拿五杀了没 😜

还有经典的催婚没 哈哈哈哈~


当然  起码你看到这篇文章的时候已经在小小学习下了 哈哈哈~


正题开始啦~

牛年啦~  咋们也研究下怎么给我们滴 IDEA 添加点 过年滴气氛,像这样


Spring boot 源码 之 Banner

源码看起来  <( ̄︶ ̄)↗[GO!]  

Springboot 启动时,会先去创建SpringApplication 对象 。


SpringApplication  构造器

指定banner的模式


Banner 函数式接口

这里有三种模式


run 方法

创建banner对象


进入上图红框中,可以看到这里如果不是 OFF 模式的话会去创建 SpringApplicationBannerPrinter 对象


可以看到该类中还定义了 图片的类型(居然还支持 gif !)~ 😝


接着来到下面这段源码,可以看到这里只是 输出流的不同 ,即 打印到控制台或者日志文件中


return this.bannerMode == Mode.LOG ? bannerPrinter.print(environment, this.mainApplicationClass, logger) : bannerPrinter.print(environment, this.mainApplicationClass, System.out);



print 源码

获取Banner


getBanner 源码

获取Banner


getImageBanner 源码

这里会先 按顺序 去搜索 gif,jpg,png 有的话就立刻返回了,不会继续往下搜寻了~


image 路径的话也可以自己配置,设置的话默认在 resources 文件夹下面~


不知道有没有小伙伴一样很好奇这个 banner.gif 打印出来啥样子 哈哈哈哈~

4ye  这里弄了一个只有三帧的 gif 图 (太多帧的话会打印个没完没了的 哈哈哈😝) 效果如下~  



初二啦,你好牛!



谢谢可爱又帅气的大佬们的观看!祝您 天天开心!😄  

感谢您的关注!您的每个关注,都是博主生发的动力 😝

         

点个“在看”表示朕

已阅



合成大西瓜之抱歉~ 我只有大西瓜和刀剑神域~!!


了解这些,对在学或者想学编程的你很重要!!!


400多本电子书?!


2021了,你知道在哪里获取优质的学习资源吗?



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存