首页 > 其他分享 >Spring笔记——SpringBoot启动流程

Spring笔记——SpringBoot启动流程

时间:2024-03-25 23:44:06浏览次数:36  
标签:容器 SpringBoot 启动 Spring BootStrap 笔记 监听器

Spring笔记——SpringBoot启动流程

创建 ApplicationContext

  • 配置资源加载器
  • 配置启动类
  • 确定web容器类型
  • 获取一些BootStrap容器初始动作
  • 配置一些容器初始动作
  • 配置一些监听器

运行 ApplicationContext

  1. 创建BootStrap容器并设置监听器
  2. 准备容器环境
  3. 启动容器
  4. 调用所有ApplicationRunner和CommandLineRunner

准备容器环境

  • AOT 加速
  • 关闭BootStrap容器
  • 循环依赖支持
  • 懒加载支持
  • 容器KeeyAlive支持

启动容器

  • 属性资源准备
  • bean工厂准备与一些处理动作
  • 消息事件资源初始与事件多播器初始
  • web容器创建
  • 在子层容器中初始化事件多播器,监听器等
  • 容器所有非懒加载单例bean创建
  • 清理相关启动缓存资源

image

https://www.processon.com/view/link/660193e6188e2649fda1f00d

标签:容器,SpringBoot,启动,Spring,BootStrap,笔记,监听器
From: https://www.cnblogs.com/listjiang/p/18095663

相关文章

  • [附源码]计算机毕业设计高校教材管理系统(JSP+java+springmvc+mysql+MyBatis)
    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。项目文件图项目介绍随着高校教育资源的不断扩充和教育体系的日益复杂化,高效的教材管理变得尤为重要。一个专业的高校教材管理系统能够实现教材信息的集中管理、库存状态实时监控、......
  • [附源码]计算机毕业设计大学生创新项目管理系统(JSP+java+springmvc+mysql+MyBatis)
    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。项目文件图项目介绍随着高等教育的不断发展,大学生创新项目成为培养学生创新能力和实践能力的重要途径。有效的项目管理对于确保创新项目的顺利进行和高质量完成至关重要。然而,目前......
  • [附源码]计算机毕业设计疫情下高校学生离校系统(JSP+java+springmvc+mysql+MyBatis)
    本项目包含程序+源码+数据库+LW+调试部署环境,文末可获取一份本项目的java源码和数据库参考。项目文件图项目介绍疫情的突发和持续影响使得高校学生离校管理面临前所未有的挑战。为了确保校园疫情防控的有效进行,同时保障学生的健康安全和合理流动,一个计算机毕业设计的疫情下......
  • 学习java时候的笔记(二)
    判断和循环判断结构if语句格式1:if(关系表达式){ 语句体;}Demoimportjava.util.Scanner;publicclassIfDemo1{publicstaticvoidmain(String[]args){/*需求:键盘录入女婿酒量,如果大于2斤,老丈人给出回应,反之不回应*/......
  • TypeScript学习笔记之泛型
    介绍软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性。组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能。在像C#和Java这样的语言中,可以使用泛型来创建可重用的组件,一个组件可以支持多种类型的数据......
  • 基于vue+Springboot后台前后端分离项目:购物商城设计与实现(源码+文档+安装部署)
      博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。所有项目都配有从入门到精通的基础知识视频课程,学习后应对毕业设计答辩。项目配有对应开发文档、开题报告、任务书......
  • Mac 使用VSCode搭建SpringBoot+Maven开发环境
    Mac使用VSCode搭建SpringBoot+Maven开发环境大多数人在开发java后端时使用的是IntelliJIDEA,该软件商用版收费太贵,社区版功能又太少,所以我希望可以使用VSCode来创建和开发后端项目,搭建的过程如下:1.下载和安装javasdk下载地址:https://www.oracle.com/java/technologies/downl......
  • 【笔记】普通生成函数
    【笔记】普通生成函数0前置芝士0.1等比数列因为我不会,所以在这里提一嘴。\(a_i=a_{i-1}q\Rightarrowa_i=a_1q^{i-1}\)\(S=\sum\limits_{i=1}^na_i\RightarrowqS=\sum\limits_{i=2}^{n+1}a_i=S-a_{n+1}+a_1\)\(\RightarrowS=\dfrac{a_1(q^n-1)}{q-1}\)​0.2泰勒级......
  • springboot关于bean对象的管理
    Bean的扫描@springbootApplication注释,本质上是一个组合注解,其中组合了@ComponentScan注解,默认只能扫描启动类所在的包以及子包 如果要注册的bean对象来自于第三方(不是自定义的),是无法用@Component及衍生注解声明bean的可以用@Bean注释注入三方bean对象publicstatic......
  • 2017 各省省选做题笔记
    AHOI/HNOID1T1单旋不会哦,感觉这题最难。D1T2影魔考虑计算每个位置作为\([l+1,r-1]\)中的最大值时的贡献,一定是有一端取到了左边第一个比自己大的或者右边第一个比自己大的,可以用单调栈求出所有的有效点对,是线性的,然后做一遍二维数点即可。D1T3礼物首先考虑不做修......