spring(3) - springboot启动过程

1. 大致过程

1.1 jre的启动

java -jar app.jar

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

1.2 springboot的启动

SpringApplication.run(App.class, args);

1.3 执行SpringApplication构造方法

 (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的初始化,并注册到容器

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...