易考八股文之SpringBoot的启动流程

SpringBoot的启动流程主要包括以下几个步骤:

1.创建SpringApplication对象

这个过程包括推断启动类型、设置初始化器、初始化监听器以及推断main方法所在的类。

2.运行SpringApplication的run方法

这是启动SpringBoot应用的核心入口,具体步骤包括:

  • 获取运行监听器。
  • 发布启动过程中的事件。
  • 准备环境配置(Environment)。
  • 创建ApplicationContext(IOC容器)。
  • 准备ApplicationContext的基本信息。
  • 刷新IOC容器。
  • 调用所有的runners。

3.总结:

在整个流程中,SpringBoot会加载配置文件(如application.yml 和application.properties ),根据配置信息初始化Spring容器,包括注册bean、创建bean实例、完成依赖注入等操作。此外,SpringBoot会自动扫描项目中的类,并根据@Configuration和@Bean注解进行自动配置。最后,SpringBoot会启动内嵌的Web服务器(如Tomcat或Jetty),使得应用程序可以直接以Web应用程序的形式运行。

相关推荐
鲨鱼辣钊3 小时前
【FastAPI筑基-Day19】APScheduler定时任务全实战|自动执行、动态启停、后台常驻
java·spring·fastapi
学长毕业设计8 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)
java·spring boot·后端
东小西8 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度
java·后端·spring
东小西8 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)
java·后端·spring
许彰午8 小时前
22-DataCenter报文序列化
java·低代码·架构·状态模式
2601_962065258 小时前
[MySQL] SQL优化之性能分析
java·sql·mysql
小范同学_8 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
予昊9 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
2601_9622035110 小时前
【SpringAI入门】初识SpringAI
java
weixin_4614085810 小时前
Mybatis-flex小记
java·开发语言·mybatis