spring(3) - springboot启动过程

2022-06-15 21:34:36 浏览数 (1)

1. 大致过程

1.1 jre的启动

代码语言:javascript复制
java -jar app.jar

当在服务器执行该命令的时候 : 服务器去环境变量找到 "java" 对应的执行文件路径 (例如 windows中的 java.exe) --> 执行java.exe --> 按照启动参数,调用JNI 申请内存,初始化JVM ,调用类的加载器进行类的预加载(检查,校验,加载等) 将jdk自带的核心类库加载到方法区 --> 找到主类 --> 执行 main方法

1.2 springboot的启动

代码语言:javascript复制
SpringApplication.run(App.class, args);

1.3 执行SpringApplication构造方法

代码语言:javascript复制
 (new SpringApplication(primarySources))

构造方法

````

主要做了

// 3. 获取初始化工厂集合的时候,扫描并初始化所有的自动装配工厂集合; 在 // 4. 获取初始化工厂监听集合的时候,为自动装配工厂集合初始化了监听器集合;

1.4 执行SpringApplication构造方法

1.4.1 在 // 6. 刷新容器

  • 启动了web引擎 默认Tomcat 详情参读 spring(1) - springboot内置Tomcat启动过程;
  • 准备benFactory --> // 1. 准备BeanFactiry
  • 初始化bean --> // 2. 通过初始化好的beanFactory进行bean的初始化,并注册到容器

0 人点赞