首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】Banner 信息打印流程

    这里就引申出了本篇将要介绍的 Banner 信息打印流程。 :banner 信息打印接口类最后根据 bannerMode 的值不同,有下面两种 banner 信息打印模式:3.1 LOG 模式打印LOG 模式打印,可见如下:bannerPrinter.print 接口,该接口对应实际要打印Banner 信息的实现类。 Banner 信息打印的源码,相信如果上面的内容都看下来的话,完全熟悉 Banner 信息打印流程不再是个问题。 有了这些基础的知识,我们就可以来自定义 Banner 信息打印,敬请期待下篇博文!!!

    46921编辑于 2024-07-25
  • 来自专栏开发框架-Spring Boot

    【Spring Boot 源码学习】自定义 Banner 信息打印

    《Spring Boot 源码学习系列》引言上篇博文,Huazie 带大家了解了完整的 Banner 信息打印流程。相信大家都跃跃一试了,那么本篇就以这些基础的知识,来自定义 Banner 信息打印打印 Banner 信息。 ,则会使用 ImageBanner 打印 Banner 信息。 =classpath:banner/mybanner.png然后,我们运行 DemoApplication 入口类,可见如下运行截图:2.3 添加自定义的图像显示信息查看 ImageBanner 的源码 Banner 信息打印,再次加深了对 Banner 信息打印流程的理解。

    83831编辑于 2024-07-26
  • 来自专栏andyhu-大前端

    打印公司logo、表格、有趣动图、堆栈信息自定义样式

    一、 打印调试信息 console.debug('调试信息') 打印的调试信息可以在浏览器的 console -> levels 里面的 Verbose 里看到 二、打印普通信息 console.log ("普通信息") 打印信息 console.info("打印信息") 在谷歌浏览器中打印的效果和打印普通信息几乎一样。 , age: 13}, {id: 3, name: '二狗子', age: 11}, {id: 4, name: '二驴', age: 14}, ]) 这是控制台打印的效果,一个表格形式的数据 ', age: 13}, {id: 3, name: '二狗子', age: 11}, {id: 4, name: '二驴', age: 14}, ]) console.groupEnd 十一、打印错误信息 console.error("这是一个错误信息") 打印错误信息,调试的时候常用。

    3.7K40编辑于 2023-08-14
  • 来自专栏springboot

    SpringBoot源码解析(六):打印Banner

    接下来将深入介绍启动Banner打印的具体实现及流程banner.printBanner(environment, sourceClass, out); // 返回一个 PrintedBanner 对象,包含打印的横幅和源类信息。 ", ex); } // 返回一个 PrintedBanner 对象,包含打印的横幅和源类信息。 // 默认的 Banner 实现,用于打印 "Spring" 的启动横幅,和版本信息 class SpringBootBanner implements Banner { // 预定义的 ASCII / 版本号 )); // 添加空行用于分隔横幅和其他输出 printStream.println(); } } 控制台效果 总结 本文全面解析了SpringBoot启动横幅的实现原理、打印流程自定义方法

    61200编辑于 2025-01-20
  • 来自专栏CSDN

    SpringBoot源码 | printBanner方法解析

    SpringBoot源码 | printBanner方法解析 printBanner printBanner方法用于打印在src/main/resources下名字是banner自定义日志文件信息,对于整体的 SpringBoot启动流程来说不算主启动业务流程,但是也提供了自定义打印日志内容的可能,有一定存在的意义,所以这里也一起来看一下printBanner方法内部吧,printBanner方法源码加入注释后 是否允许打印banner信息 if (this.bannerMode == Banner.Mode.OFF) { return null; } //资源加载类 ,回到print方法打印banner.txt文本内容 通过构造方法返回PrintedBanner用于后续打印日志信息输出 其中构造方法中参数sourceClass是主程序类 到这里整个 banner日志信息 //

    23810编辑于 2024-03-29
  • 来自专栏Java技术进阶

    Spring Boot banner详解

    Spring Boot 系统初始化器详解 Spring Boot 监听器详解 Spring Boot banner详解 自定义banner Spring Boot 默认打印banner是这样的,Java 一般的公司如果有自己脚手架,都会选择自定义banner,放一个公司Logo或者框架别名。 自定义banner 样式 光一个Logo也还是太单调,如果能再打印个Spring Boot 版本、应用程序版本就更好了,Spring Boot 都给我们提供了相关变量,可以在banner.txt中使用。 Spring Boot 提供了spring.main.banner-mode 配置,OFF-关闭banner打印,CONSOLE-使用System.out打印banner,log文件不会记录,LOG-打印到 log文件 另外同样可以用springApplication.setBannerMode(Banner.Mode.OFF);方式设置banner 加载打印原理 在之前的《Spring Boot 框架整体启动流程详解

    1K50编辑于 2023-10-16
  • 来自专栏Devops专栏

    22-SpringBoot流程分析-run

    22-SpringBoot流程分析-run SpringBoot流程分析-run 启动计时器 执行监听器 准备环境 打印banner:可以resource下粘贴自定义banner 创建context 4.打印Banner信息 image-20220227172317638 可以看到这里打印Banner 信息。 5.将断点设置在打印Banner处,去除其他断点 好了,设置好断点之后,我们就可以修改设置一个 banner.txt 进行文件替换,然后再重新debug 进来看看效果。 6.设置 banner.txt ,替换打印信息 _ooOoo_ o8888888o 佛祖保佑 永无BUG 再次debug启动服务,可以查看打印信息如下: 注意:如果没有,那么则执行 maven clean 后,再执行。

    31220编辑于 2022-03-23
  • 深入解析Spring Boot启动魔法:SpringApplication.run()源码全流程拆解

    打印Banner Banner printedBanner = printBanner(environment); // 5. 自定义Banner的实现与实践 在Spring Boot启动过程中,控制台打印Banner不仅是技术产品的一张"名片",更是开发者展示项目个性的绝佳机会。 的支持(2.x版本曾支持) 增强了对Unicode字符的支持 环境变量spring.banner.image.* 配置项有调整 实战调试技巧 要验证自定义Banner是否生效: 在SpringApplication.run 打印Banner(控制台图标) Banner printedBanner = printBanner(environment); // 4. =50 // 图片Banner宽度 spring.main.banner-mode=console/off/log // 编程式自定义(Spring Boot 3.2+) @Bean public

    65910编辑于 2025-08-27
  • 来自专栏Java后端技术

    SpringBoot一站式启动流程源码分析

    其实SpringApplication 是将一个典型的Spring应用的启动流程”模板化”了,在没有特殊定制需求的情况下,默认的模板化后的执行流程就能满足我们的需求了。 三、揭秘SpringApplication的执行流程    因为启动程序的代码中运行的就是SpringApplication的run方法,所以我们执行流程当然就要从这个run方法开始,先上源码: public 如果SpringApplication的showBanner属性为true的话,则打印banner(这里是基于Banner.Mode来决定banner打印行为)(代码标记5处)。 根据条件来决定是否使用自定义的BeanNameGenerator,决定是否使用自定义的ResourceLoader(代码标记8处)。 (代码标记16处),如果整个启动过程中出现了异常,则依然调用所有的SpringApplicationRunListener的finished()方法,这种情况下会将所有的异常信息一起传入并处理(代码标记

    42520发布于 2018-08-09
  • 来自专栏Java技术进阶

    Spring Boot 框架整体启动流程详解

    banner Banner printedBanner = printBanner(environment); //创建ApplicationContext,根据WebApplicationType 计算启动需要的时间 Duration timeTakenToStartup = Duration.ofNanos(System.nanoTime() - startTime); //记录应用程序启动信息 banner 8、创建ApplicationContext 9、设置启动期间的度量记录类 10、准备应用程序上下文 11、刷新应用程序上下文 12、计算启动需要的时间 13、如果需要,记录应用程序启动信息 banner private Banner printBanner(ConfigurableEnvironment environment) { //banner关闭,不打印 if (this.bannerMode this.resourceLoader : new DefaultResourceLoader(null); //banner打印器 SpringApplicationBannerPrinter

    92830编辑于 2023-10-16
  • 来自专栏测试开发干货

    测试圈相亲平台开发流程11):数据层简单实现-个人信息表择偶要求表

    1,个人信息表 打开我们的项目,找到django目录下的models.py文件,这里用orm的方式来声明表结构: 如图,在所有的字段中,我设计要么为字符串,要么为整形。 然后是择偶表,并默认个人信息表的id作为自己外键,并设置删除操作on_delete,和对于个人信息表的查子别名related_name 然后去admin.py中写入自动注册代码:写它的好处是在admin 先创建一个 鸣人,把他的个人信息和择偶信息填进去: (注意,正常平台不应该公布个人昵称,制作之处就只有wechat号作为身份唯一标识,但考虑到教程应该让大家看的懂,所以我这里暂时把wechat号内填充样例姓名了 还有鸣人的择偶信息 鸣人的择偶要求并不高,身高要求,年收入5000块,上忍,18周岁,也得是木叶村的。 然后我们再创建一个佐助,一个小樱,一个雏田。 他们每对的择偶要求和个人信息显然更贴切。这个结果就作为我们的预期输出。 所以我们之后要做的就是,用一个算法,来让实际匹配结果和我们的预期输出一致。

    65610编辑于 2022-05-20
  • 来自专栏架构师成长之路

    Spring Boot(6) 原理和启动流程四、ApplicationContextInitializer、ApplicationContextAware、ApplicationContext、App

    横幅打印方式、有关闭、日志、控制台 .bannerMode(Banner.Mode.OFF) // 设置自定义banner .banner() // 追加自定义的 initializer 到集合中 .initializers() 4、打印banner 打印启动的Banner 启动时打印banner可以通过在classpath下添加banner.txt来修改,或者通过指定banner.location设置文件。 如果SpringApplication的showBanner属性被设置为true,则打印启动的Banner。 6. 三、启动信息说明 ---- 启动信息如下: 1:启动SampleController。

    2.2K41编辑于 2022-04-14
  • 来自专栏全栈程序员必看

    Spring Boot+Vue开发实战_有关理解的图片带字

    ,在这里我们可以很直观的看到它的执行顺序,是在打印banner的后面执行的; 4、加载所有的监听器 加载监听器也是从 META-INF/spring.factories 配置文件中加载的,与初始化不同的是 banner 信息 显而易见,这个流程就是用来打印控制台那个很大的spring的banner的,就是下面这个东东 那他在哪里打印的呢? 他在 SpringBootBanner.java 里面打印的,这个类实现了Banner 接口, 而且banner信息是直接在代码里面写死的; 有些公司喜欢自定义banner信息,如果想要改成自己喜欢的图标该怎么办呢 springboot错误信息,返回true则只打印异常信息 return false; } } 在 spring.factories 文件中注册异常报告器 # Error Reporters run方法2,实现 CommandLineRunner 接口既可运行" ); } } 启动springboot后就可以看到控制台打印信息了 完 其实了解springboot

    63530编辑于 2022-09-25
  • 来自专栏狗哥的 Java 世界

    工作三年,小胖问我 SpringBoot 是怎么启动的?真的离谱!

    Actuator 接口 SpringBoot 的启动流程 除了问特性之外,面试官往往还会问 SpringBoot 的启动流程。那么它的启动流程是怎样的呢? 的打印Banner printedBanner = this.printBanner(environment); // 8.创建应用上下文 context 创建 Banner打印类 SpringBoot 启动时会打印 Banner 图片,默认的如下所示: ? 11. 刷新应用上下文 解析配置文件,加载 bean 对象,并启动内置的 web 容器等等。 12. 事件处理 一些自定义的后置处理操作。 13. 停止计时器监控类 停止此过程第一步中的程序计时器,并统计任务的执行信息。 14. 输出日志信息 把相关的记录信息,如类名、时间等信息进行控制台输出。 15.

    84810发布于 2021-03-04
  • 来自专栏全栈程序员必看

    Springboot单元测试_怎么启动汽车步骤

    至此,ConfigurationEnvironment准备完毕,后面日志中开始输出banner信息。 5、第七步:打印banner Banner printedBanner = printBanner(environment); private Banner printBanner(ConfigurableEnvironment 这里的Banner是默认的,博主没有添加任何自定义banner自定义Banner可以参考博文:趣味篇:SpringBoot自定义Banner。 至此,banner打印完毕,进入创建Spring应用上下文阶段。 logStartupInfo(context.getParent() == null); // 打印active profile的信息 logStartupProfileInfo(context);

    1K20编辑于 2022-09-30
  • 来自专栏全栈程序员必看

    9千字长文带你了解SpringBoot启动过程–史上最详细 SpringBoot启动流程-图文并茂

    ,在这里我们可以很直观的看到它的执行顺序,是在打印banner的后面执行的; 4、加载所有的监听器 加载监听器也是从 META-INF/spring.factories 配置文件中加载的,与初始化不同的是 banner 信息 显而易见,这个流程就是用来打印控制台那个很大的spring的banner的,就是下面这个东东 那他在哪里打印的呢? 他在 SpringBootBanner.java 里面打印的,这个类实现了Banner 接口, 而且banner信息是直接在代码里面写死的; 有些公司喜欢自定义banner信息,如果想要改成自己喜欢的图标该怎么办呢 springboot错误信息,返回true则只打印异常信息 return false; } } 在 spring.factories 文件中注册异常报告器 # Error Reporters 异常报告器 run方法2,实现 CommandLineRunner 接口既可运行" ); } } 启动springboot后就可以看到控制台打印信息了 完 其实了解springboot启动原理对开发人员还是有好处的

    20.5K98编辑于 2022-10-01
  • 来自专栏程序猿阿朗的专栏

    Springboot 系列(八)动态Banner与图片转字符图案的手动实现

    可以通过向类路径中添加一个banner.txt文件或设置spring.banner来更改在start up上打印banner。属性指向此类文件的位置。 将gif、banner.jpg或banner.png图像文件保存到类路径或设置spring.banner.image。位置属性。图像被转换成ASCII艺术形式,并打印在任何文本横幅上面。 1. 自定义 banner 根据官方的描述,可以在类路径中自定义 banner 图案,我们进行尝试在放 resouce 目录下新建文件 banner.txt 并写入内容(在线字符生成)。 自定义 Banner Springboot 把图案转成了 ASCII 图案。 2. 3 /** 获取自定义banner文件信息 */ private Banner getImageBanner(Environment environment) { // BANNER_IMAGE_LOCATION_PROPERTY

    1.7K10发布于 2019-11-04
  • 来自专栏Java架构师必看

    7.Spring-Boot自定义Banner

    1.在src/main/resources新建banner.txt 写入信息内容2.在application.properties#自定义打印 bannerspring.banner.location= classpath:banner.txtspring.banner.charset=utf-83.关闭bannerpublic static void ma... 今天说一说7.Spring-Boot自定义Banner,希望能够帮助大家进步!!! 1.在src/main/resources 新建banner.txt 写入信息内容 2.在application.properties #自定义打印banner spring.banner.location =classpath:banner.txt spring.banner.charset=utf-8 3.关闭banner 此代码由Java架构师必看网-架构君整理 public static void

    30330编辑于 2021-12-03
  • 来自专栏一猿小讲

    玩转 Spring Boot 原理篇(启动机制源码剖析)

    集成篇(定时任务框架Quartz) 玩转 Spring Boot 原理篇(源码环境搭建) 玩转 Spring Boot 原理篇(核心注解知多少) 玩转 Spring Boot 原理篇(自动装配前凑之自定义 banner 信息 Banner printedBanner = printBanner(environment); //9、创建应用上下文,可以理解为创建一个容器 ,打印 profile 信息, // 发布 ApplicationContext 加载完毕事件:ApplicationPreparedEvent prepareContext(bootstrapContext 1.4. printBanner() 方法 当环境就绪后,接着便是创建 Banner打印。 在 printBanner 方法内部,会创建 SpringApplicationBannerPrinter 实例,然后调用 print 方法完成 banner 打印

    82830编辑于 2022-04-12
  • 来自专栏Java学习网

    微服务架构之Spring Boot(二十一)

    23.2自定义横幅 通过将 banner.txt 文件添加到类路径或将 spring.banner.location 属性设置为此类文件的位置,可以更改启动时打印的横幅。 图像将转换为ASCII艺术表示,并打印在任何文本横幅上方。 在 banner.txt 文件中,您可以使用以下任何占位符: 表23.1。 您还可以使用 spring.main.banner-mode 属性来确定是否必须在 System.out ( console )上打印横幅,发送到配置的记录器( log ),或 者根本不产生横幅( off YAML将 off 映射到 false ,因此如果要在应用程序中禁用横幅,请务必添加引号,如以下示例所示: spring: main: banner-mode: "off" 23.3自定义SpringApplication 有关详细信息,请参阅 SpringApplicationBuilder Javadoc。

    64310编辑于 2022-04-07
领券