Springboot 居然可以设置动态的Banner!!(悄悄滴~)|牛气冲天新年征文

简介: 正题开始啦~牛年啦~ 咋们也研究下怎么给我们滴 IDEA 添加点 过年滴气氛,像这样Spring boot 源码 之 Banner源码看起来 <( ̄︶ ̄)↗[GO!]Springboot 启动时,会先去创建SpringApplication 对象 。SpringApplication 构造器指定banner的模式Banner 函数式接口这里有三种模式run 方法创建banner对象进入上图红框中,可以看到这里如果不是 OFF 模式的话会去创建 SpringApplicationBannerPrinter 对象可以看到该类中还定义了 图片的类型(居然还支持 gif

正题开始啦~


牛年啦~  咋们也研究下怎么给我们滴 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 图 (太多帧的话会打印个没完没了的 哈哈哈😝) 效果如下~


网络异常,图片无法展示
|


网络异常,图片无法展示
|



目录
相关文章
|
7月前
|
Java
Springboot 导出word,动态填充表格数据
Springboot 导出word,动态填充表格数据
|
7月前
|
Java 调度 Spring
SpringBoot实现多线程定时任务动态定时任务配置文件配置定时任务
SpringBoot实现多线程定时任务动态定时任务配置文件配置定时任务
698 0
|
27天前
|
Java Spring
SpringBoot入门 - 定制自己的Banner
SpringBoot入门 - 定制自己的Banner
20 2
SpringBoot入门 - 定制自己的Banner
|
7月前
|
安全 数据安全/隐私保护
Springboot+Spring security +jwt认证+动态授权
Springboot+Spring security +jwt认证+动态授权
216 0
|
1月前
|
Java Spring
SpringBoot入门(5) - 定制自己的Banner
SpringBoot入门(5) - 定制自己的Banner
12 0
 SpringBoot入门(5) - 定制自己的Banner
|
1月前
|
JSON Java 数据格式
springboot中表字段映射中设置JSON格式字段映射
springboot中表字段映射中设置JSON格式字段映射
126 1
|
2月前
|
Java Spring
【SpringBoot】技能一之修改端口与banner样式
【SpringBoot】技能一之修改端口与banner样式
31 5
|
2月前
|
存储 Java API
简单两步,Spring Boot 写死的定时任务也能动态设置:技术干货分享
【10月更文挑战第4天】在Spring Boot开发中,定时任务通常通过@Scheduled注解来实现,这种方式简单直接,但存在一个显著的限制:任务的执行时间或频率在编译时就已经确定,无法在运行时动态调整。然而,在实际工作中,我们往往需要根据业务需求或外部条件的变化来动态调整定时任务的执行计划。本文将分享一个简单两步的解决方案,让你的Spring Boot应用中的定时任务也能动态设置,从而满足更灵活的业务需求。
162 4
|
2月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
161 0
|
4月前
|
Java Spring 开发者
解锁 Spring Boot 自动化配置的黑科技:带你走进一键配置的高效开发新时代,再也不怕繁琐设置!
【8月更文挑战第31天】Spring Boot 的自动化配置机制极大简化了开发流程,使开发者能专注业务逻辑。通过 `@SpringBootApplication` 注解组合,特别是 `@EnableAutoConfiguration`,Spring Boot 可自动激活所需配置。例如,添加 JPA 依赖后,只需在 `application.properties` 配置数据库信息,即可自动完成 JPA 和数据源设置。这一机制基于多种条件注解(如 `@ConditionalOnClass`)实现智能配置。深入理解该机制有助于提升开发效率并更好地解决问题。
79 0
下一篇
DataWorks