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

响应式网站404页面怎么做企业管理培训公司排行榜

响应式网站404页面怎么做,企业管理培训公司排行榜,设计平台市场分析,江苏省建设工程网站Spring Boot 启动生命周期详解 1. 启动阶段划分 Spring Boot 启动过程分为 4个核心阶段,每个阶段涉及不同的核心类和执行逻辑: 阶段 1:预初始化(Pre-initialization) 目标:准备启动器和环境配置关键类&am…

Spring Boot 启动生命周期详解

在这里插入图片描述

1. 启动阶段划分

Spring Boot 启动过程分为 4个核心阶段,每个阶段涉及不同的核心类和执行逻辑:


阶段 1:预初始化(Pre-initialization)

  • 目标:准备启动器和环境配置
  • 关键类
    • SpringApplication:启动器核心类,负责协调整个启动流程
    • SpringApplicationBuilder:构建启动器的辅助类(可选)
    • Environment:存储配置属性(如 application.properties
  • 执行流程
    1. 通过 SpringApplication.run() 方法启动应用
    2. 初始化 SpringApplication 对象,设置参数(如主类、环境变量)
    3. 加载 Environment 的默认配置(如系统属性、JVM参数)

阶段 2:初始化(Initialization)

  • 目标:创建 ApplicationContext 并加载核心配置
  • 关键类
    • ApplicationContext:Spring 容器(如 AnnotationConfigServletWebServerApplicationContext
    • SpringApplicationRunListener:监听启动事件(如 ServletWebServerApplicationContext
    • ApplicationContextInitializer:初始化容器(如 ConfigFileApplicationListener
  • 执行流程
    1. 创建 ApplicationContext 实例(Web项目通常为 WebApplicationContext
    2. 通过 ApplicationContextInitializer 初始化容器(如加载 @PropertySource
    3. 调用 SpringApplicationRunListenerstarting() 方法通知启动

阶段 3:刷新(Refresh)

  • 目标:加载 Bean 定义并完成容器初始化
  • 关键类
    • ConfigurableApplicationContext:支持刷新的容器接口
    • BeanFactory:Bean 定义的注册表
    • BeanDefinitionReader:读取 Bean 配置(如 XML 或注解)
    • BeanFactoryPostProcessor:修改 Bean 定义(如 PropertySourcesBeanFactoryPostProcessor
    • BeanPostProcessor:修改 Bean 实例(如 AutowiredAnnotationBeanPostProcessor
  • 执行流程
    1. 加载 Bean 定义:通过组件扫描(@ComponentScan)或 XML 配置
    2. BeanFactory 后处理BeanFactoryPostProcessor 修改 Bean 定义(如属性源)
    3. 实例化 Bean:创建 Bean 实例(但不注入依赖)
    4. Bean 后处理BeanPostProcessor 处理 Bean 实例(如依赖注入)
    5. 注册 Bean:将 Bean 注册到容器中

阶段 4:运行(Run)

  • 目标:启动嵌入式服务器并完成应用就绪
  • 关键类
    • EmbeddedWebApplicationContext:嵌入式 Web 容器(如 Tomcat、Jetty)
    • ApplicationRunner:自定义启动后逻辑(@Order 可控制顺序)
    • CommandLineRunner:命令行参数处理(与 ApplicationRunner 类似)
  • 执行流程
    1. 启动嵌入式 Web 服务器(如 Tomcat)
    2. 执行 ApplicationRunnerCommandLineRunner(按顺序)
    3. 输出启动完成日志(如 Started Application in ... seconds

表格总结:Spring Boot 启动阶段与核心类

阶段关键类作用
预初始化SpringApplication, Environment初始化启动器,加载基础环境配置
初始化ApplicationContext, SpringApplicationRunListener, ApplicationContextInitializer创建容器,初始化配置,监听启动事件
刷新ConfigurableApplicationContext, BeanFactory, BeanFactoryPostProcessor, BeanPostProcessor加载 Bean 定义,处理 Bean 定义和实例化,完成依赖注入
运行EmbeddedWebApplicationContext, ApplicationRunner, CommandLineRunner启动嵌入式服务器,执行自定义启动后逻辑

关键类说明

  1. SpringApplication
    • 核心启动器,协调整个生命周期,支持多种应用类型(如 Web、CLI)。
  2. ApplicationContext
    • Spring 容器,管理 Bean 的生命周期和依赖注入。
  3. BeanFactoryPostProcessor
    • 在 Bean 实例化前修改 Bean 定义(如 PropertySourcesBeanFactoryPostProcessor)。
  4. BeanPostProcessor
    • 在 Bean 实例化后、依赖注入前修改 Bean 实例(如 AutowiredAnnotationBeanPostProcessor)。
  5. EmbeddedWebApplicationContext
    • Web 应用的容器,集成嵌入式服务器(如 Tomcat)。

执行顺序总结

plaintext
SpringApplication.run() →
预初始化 → 初始化 → 刷新 → 运行 → 应用启动完成

通过以上流程,Spring Boot 实现了从启动到服务就绪的完整生命周期管理。

http://www.dtcms.com/wzjs/512277.html

相关文章:

  • 华为公司网站建设方案二维码引流推广的平台
  • 建立网站需要多少钱八寇湖南岚鸿团队友好链接
  • 工程项目查询哪个网站文案发布平台
  • 直播系统平台seo是什么意思 职业
  • 用dw可以做动态网站吗西安网站定制开发
  • 公司做网站的多吗网上国网推广
  • 福州网站制作案例百度推广登陆网址
  • 服务行业网站建设国产长尾关键词拘挖掘
  • 企业网页制作推广百度seo软件优化
  • 灌云县建设局网站网络广告策划书案例
  • 移动互联网app开发百度关键词网站排名优化软件
  • 网站建设 钱软文发稿网
  • 海淀网站建设好口碑的关键词优化
  • wordpress禁止google字体宁波seo推广方式排名
  • 关键词网站建设百度推广账户怎么开
  • 织梦技校招生网网站模板整站源码温州seo服务
  • 做网站简单需要什么sem推广托管公司
  • 有没有做卡哇伊的企业网站黑帽seo技术培训
  • 常平做网站公司友情链接吧
  • 景区微网站建设费用seo在线优化工具
  • 网站里会自动换图怎么做石家庄疫情
  • 国内人做韩国网站一般都卖什么产品推广软文范文
  • skype在网站上怎么做链接网盘搜索引擎
  • 长春做网站价格常州网站建设优化
  • php wordpress单本小说网站源码+采集百度秒收录软件
  • 哈尔滨企业网站建设公司短视频剪辑培训班速成
  • 做网站需要用服务器吗免费域名服务器
  • 专业制作藏品网站上海平台推广的公司
  • 网站建站的技术解决方案站长工具查询网站
  • 如何申请公司域名蜘蛛seo超级外链工具