当前位置: 首页 > news >正文

做网站网页需要什么嘉兰图工业设计公司现状

做网站网页需要什么,嘉兰图工业设计公司现状,如何链接自己做的网站,怎样装修公司网站Spring Boot 的启动流程是一个复杂且有序的过程: 创建SpringApplication实例 — 调用run方法 — 启动完成(发布应用启动事件,配置环境,创建ApplicationContext,准备ApplicationContext,刷新ApplicationContext[【创建B…

Spring Boot 的启动流程是一个复杂且有序的过程:
创建SpringApplication实例 — 调用run方法 — 启动完成(发布应用启动事件,配置环境,创建ApplicationContext,准备ApplicationContext,刷新ApplicationContext[【创建BeanFactory,加载Bean定义,创建Bean实例,启动嵌入式服务器】,发布应用就绪事件) — 异常处理;
下面将详细拆解其各个阶段。

1. 启动入口

Spring Boot 应用的启动通常从一个带有 @SpringBootApplication 注解的主类的 main 方法开始。@SpringBootApplication 是一个组合注解,包含了 @Configuration@EnableAutoConfiguration@ComponentScan,分别用于配置类、启用自动配置和组件扫描。

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class MySpringBootApplication {public static void main(String[] args) {SpringApplication.run(MySpringBootApplication.class, args);}
}

2. 创建 SpringApplication 实例

在调用 SpringApplication.run 方法时,首先会创建一个 SpringApplication 实例。这个实例负责配置和启动 Spring Boot 应用。在创建过程中,会进行以下操作:

  • 推断应用类型:判断应用是普通的 Servlet 应用、Reactive 应用还是其他类型。
  • 查找并加载初始化器(ApplicationContextInitializer:初始化器可以在 ApplicationContext 创建之前对其进行自定义配置。
  • 查找并加载监听器(ApplicationListener:监听器用于监听应用启动过程中的各种事件,如应用启动、失败等。
  • 推断主类:确定包含 main 方法的主类。

3. 调用 run 方法

SpringApplication 实例创建完成后,会调用其 run 方法,该方法包含了一系列关键步骤。

3.1 发布应用启动事件(ApplicationStartingEvent

run 方法开始执行时,会发布 ApplicationStartingEvent 事件,通知所有注册的监听器应用正在启动。

3.2 配置环境(ConfigurableEnvironment
  • 创建环境对象:根据应用类型创建相应的环境对象,如 StandardServletEnvironmentStandardReactiveEnvironment
  • 加载属性源:从各种属性源(如配置文件、系统属性、环境变量等)加载配置属性。
  • 发布环境准备好事件(ApplicationEnvironmentPreparedEvent:通知监听器环境已经准备好。
3.3 创建 ApplicationContext

根据应用类型创建相应的 ApplicationContext 实例,如 AnnotationConfigServletWebServerApplicationContext 用于 Servlet 应用,AnnotationConfigReactiveWebServerApplicationContext 用于 Reactive 应用。

3.4 准备 ApplicationContext
  • 设置环境:将之前配置好的环境对象设置到 ApplicationContext 中。
  • 应用初始化器:调用之前加载的初始化器对 ApplicationContext 进行自定义配置。
  • 发布上下文准备好事件(ApplicationContextInitializedEvent:通知监听器上下文已经初始化。
  • 加载 Bean 定义:扫描并加载应用中的 Bean 定义。
3.5 刷新 ApplicationContext

调用 ApplicationContextrefresh 方法,这是 Spring 框架的核心方法,会完成以下重要操作:

  • 创建 BeanFactory:创建 DefaultListableBeanFactory 用于管理 Bean 的创建和依赖注入。
  • 加载 Bean 定义:将之前扫描到的 Bean 定义注册到 BeanFactory 中。
  • 创建 Bean 实例:根据 Bean 的定义创建 Bean 实例,并进行属性注入和初始化。
  • 启动嵌入式服务器(如果是 Web 应用):如 Tomcat、Jetty 等,用于处理 HTTP 请求。
3.6 发布应用就绪事件(ApplicationReadyEvent

ApplicationContext 刷新完成且嵌入式服务器启动成功后,会发布 ApplicationReadyEvent 事件,通知监听器应用已经准备好接受请求。

3.7 调用 CommandLineRunnerApplicationRunner

如果应用中定义了实现 CommandLineRunnerApplicationRunner 接口的 Bean,会依次调用它们的 run 方法,允许开发者在应用启动后执行一些自定义逻辑。

4. 启动完成

当上述步骤都执行完毕后,Spring Boot 应用启动完成,开始监听客户端请求,提供服务。

5. 异常处理

在整个启动过程中,如果发生异常,会发布 ApplicationFailedEvent 事件,通知监听器应用启动失败,并打印详细的错误信息。

综上所述,Spring Boot 的启动流程涉及多个阶段和事件,通过事件机制和各种扩展点,开发者可以在不同阶段对应用进行自定义配置和扩展。

http://www.yayakq.cn/news/945123/

相关文章:

  • 泸州市住房和城乡建设厅官方网站济南网站推广¥做下拉去118cr
  • 泗门网站建设小公司做网站多少钱
  • 怎样做网站宣传自己的宾馆公司网站建设需要注意事项
  • 东莞倣网站WordPress移动端加搜索
  • 深圳营销网站设计网站设计论文分类号
  • 住房和城乡建设部网站注册进度外贸谷歌网站推广
  • 网站 推广系部网站建设需求分析运行需求
  • 花垣做网站山东建设工程上传原件的网站
  • 做目录网站注意事项营销印刷网站
  • 什么做书籍的网站WordPress自定义信息登记
  • 建设网站好公司哪家好国内前十网站建设公司
  • 付费电影网站源码如何用快站做pc端网站
  • 潍坊 专业网站建设网站手绘教程
  • 湘潭什么网站做c1题目dw网页制作登录页面步骤
  • wordpress 主题添加标签游戏交易类网站seo怎么做
  • 淘宝做推广网站农业公园网站建设
  • 做的网站在百度上搜不出来做网站 做app好
  • 内蒙网站开发wordpress右下角
  • 网站推广句子做网站需要公司备案
  • 2016用什么网站程序做流量五大建设的主要内容
  • 做的时间长的网站制作公司哪家好域名注册官网免费
  • 搭建网站要哪些知识美食网站设计方案
  • 河南省网站建设哪家好简单的网站开发流程图
  • 网站关键词描述字数5分钟宣传片多少钱
  • 营销型网站一般有哪些内容网站备案需要哪些材料
  • 物流网站建设的需求分析响应式所长网址导航网页模板下载
  • 企业网站包括哪些网上注册公司流程和费用标准
  • 期末作业做网站的心得体会南昌广告制作
  • 短信验证码接码网站建设咸阳营销型网站开发
  • 单页网站搭建全球华设计