1、前言java
前面几章主要讲了一些和加载配置文件相关的一些spring boot 基础分析,本章开始将总结以前讲的文章。spring
2、时序图app
画了个关于org.springframework.boot.SpringApplication.java的类关于run()方法的时序图,你们能够参考一下,有个更清晰的认识,以下图,若是看不清,请 右键->在新窗口打开。spa
3、时序图配合源码讲解blog
1.首先咱们看黑线部分,首先SpringApplication调用了一下run()方法,接着在run()方法内部实现的后续的方法。源码
2.方法解释:io
SpringApplication效率
run(): 基础
运行刷新运行springApplication;配置
preparedEnvironment(SpringApplicationRunListeners listeners,
ApplicationArguments applicationArguments):
建立和准备环境
configureIgnoreBeanInfo(environment):
从environment中读取是否忽略beanInfo
printBanner(environment):
打印spring的一些图标信息,如spring默认的是SpringBootBanner
createApplicationContext():
建立applicationContext;
未完待续。。。
StopWatch
start():开始记录
stop() : 结束记录效率
主要进行程序运行效率的记录。
SpringApplicationRunListeners
starting(): 表示当运行方法刚开始时当即调用。能够用于SpringApplicationRunListeners很是早期的初始化
started() : 表示Spring Application 上下文已经被刷新而且应用已经启动,
可是 CommandLineRunners和ApplicationRunners 没有被调用的状态.