Spring Boot启动过程全面解析(三)
作者:draculav 时间:2023-09-13 13:16:39
我已经很精简了,两篇(Spring Boot启动过程(一)、spring Boot启动过程(二))依然没写完,接着来。
refreshContext之后的方法是afterRefresh,这名字起的真...好。afterRefresh方法内只调用了callRunners一个方法,这个方法从上下文中获取了所有的ApplicationRunner和CommandLineRunner接口的实现类,并执行这些实现类的run方法。例如Spring Batch的JobLauncherCommandLineRunner:
@Override
public void run(String... args) throws JobExecutionException {
logger.info("Running default command line with: " + Arrays.asList(args));
launchJobFromProperties(StringUtils.splitArrayElementsIntoProperties(args, "="));
}
listeners.finished(context, null)实际上是在exception为null的情况下发布了ApplicationReadyEvent事件。
启动至此就差不多了,于是停止stopWatch.stop(),然后把时间打到日志里:Started Application in ***.462 seconds (JVM running for ***.977),然后感受下这记完就扔的气势:
if (this.logStartupInfo) {
new StartupInfoLogger(this.mainApplicationClass)
.logStarted(getApplicationLog(), stopWatch);
}
最后返回个context,run方法就到此结束了。
==========================================================
咱最近用的github:https://github.com/saaavsaaa
以上所述是小编给大家介绍的Spring Boot启动过程全面解析(三)网站的支持!
来源:http://www.cnblogs.com/saaav/p/6322844.html
标签:spring,boot,启动过程
0
投稿
猜你喜欢
Android提高之蓝牙隐藏API探秘
2022-05-15 03:30:14
不使用他人jar包情况下优雅的进行dubbo调用详解
2022-04-20 11:43:46
springmvc请求转发和重定向问题(携带参数和不携带参数)
2022-09-17 13:53:59
Java SpringBoot整合shiro-spring-boot-starterqi项目报错解决
2022-11-07 03:27:02
高并发下如何避免重复数据产生技巧
2022-04-17 07:08:57
c#读写ini配置文件示例
2023-09-29 16:31:36
Java class文件格式之属性_动力节点Java学院整理
2021-06-13 01:52:00
Javaweb监听器实例之统计在线人数
2023-02-08 11:47:23
Unity 如何获取鼠标停留位置下的物体
2023-09-05 17:17:14
c#连接mdf文件示例分享
2022-12-15 10:48:33
IDEA标签tabs多行显示的设置
2023-09-18 06:58:08
SpringBoot整合Dozer映射框架流程详解
2023-03-08 02:23:48
Java对象和Json文本转换工具类的实现
2022-10-22 19:09:23
C#窗体程序实现全屏及取消全屏步骤
2023-02-18 11:48:38
Java服务器主机信息监控工具类的示例代码
2023-07-26 04:34:49
MybatisPlus使用代码生成器遇到的小问题(推荐)
2021-07-17 09:15:17
C# Winform实现自定义漂亮的通知效果
2021-08-10 08:15:29
Spring Boot 日志配置方法(超详细)
2021-09-06 19:08:52
java Springboot实现教务管理系统
2023-01-18 00:28:12
Java 数组高频考点分析讲解
2021-09-01 13:14:36