0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

springboot启动流程

科技绿洲 来源:网络整理 作者:网络整理 2023-11-22 16:04 次阅读

Spring Boot 是一个快速开发框架,基于 Spring 框架,用于简化项目的配置和部署。它提供了自动配置、嵌入式服务器和一套默认的代码结构,使得开发者可以快速地开发和部署应用程序。

Spring Boot 的启动流程可以分为以下几个步骤:初始化启动环境、加载自动配置类、创建 Spring 上下文、启动嵌入式服务器。

  1. 初始化启动环境
    在 Spring Boot 启动时,首先会初始化启动环境。它会加载一些必要的配置和资源,例如日志配置、环境变量等。这些配置和资源将为后续的自动配置和应用程序提供必要的支持。
  2. 加载自动配置类
    Spring Boot 提供了一系列的自动配置类,用于根据应用程序的类路径和依赖关系,自动配置应用程序的各种功能和组件。利用这些自动配置类,可以减少开发者的配置工作,提高开发效率。

在加载自动配置类时,Spring Boot 会根据一定的条件进行判断,并只加载符合条件的自动配置类。这些条件可以通过配置文件进行调整,以满足特定的需求。加载自动配置类后,会将这些配置类中的配置信息保存在一个配置对象中,供后续使用。

  1. 创建 Spring 上下文
    在加载完自动配置类后,Spring Boot 会创建 Spring 上下文。Spring 上下文是 Spring 框架的核心部分,它负责管理应用程序的各个组件,例如 Bean 的创建、依赖注入等。

Spring Boot 使用了一个特殊的 Spring 上下文,称为 SpringApplication 上下文。它继承了 Spring 的 AnnotationConfigApplicationContext,并添加了一些特定的功能,例如自动配置和命令行参数处理等。SpringApplication 上下文的创建会加载之前保存的配置对象,并使用这些配置对象进行初始化。同时,它也会扫描应用程序的类路径,以发现和创建各种 Bean。

  1. 启动嵌入式服务器
    最后一步是启动嵌入式服务器。Spring Boot 提供了一系列的嵌入式服务器,例如 Tomcat、Jetty 等。开发者可以根据需求选择适合自己项目的服务器。

启动嵌入式服务器时,Spring Boot 会根据配置文件中的端口号和其他配置信息,启动相应的服务器,并将应用程序部署到服务器中。服务器启动后,应用程序就可以通过访问服务器的端口号来访问。

除了以上的步骤,Spring Boot 还提供了一些其他的功能,例如自动装配和热部署。自动装配可以根据依赖关系动态地注入相应的 Bean,而热部署则可以在修改代码后,快速地重新部署应用程序,以提高开发效率。

总结起来,Spring Boot 的启动流程包括初始化启动环境、加载自动配置类、创建 Spring 上下文和启动嵌入式服务器。通过这些步骤,开发者可以快速地启动和部署应用程序。同时,Spring Boot 还提供了一些其他的功能,以进一步简化开发过程。这使得 Spring Boot 成为开发者开发应用程序的首选框架之一。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5082

    文章

    19126

    浏览量

    305207
  • 框架
    +关注

    关注

    0

    文章

    403

    浏览量

    17488
  • 代码
    +关注

    关注

    30

    文章

    4788

    浏览量

    68613
  • SpringBoot
    +关注

    关注

    0

    文章

    173

    浏览量

    179
收藏 人收藏

    评论

    相关推荐

    SpringBoot中的Druid介绍

    SpringBoot中Druid数据源配置
    发表于 05-07 09:21

    SpringBoot知识总结

    SpringBoot干货学习总结
    发表于 08-01 10:40

    怎么学习SpringBoot

    SpringBoot学习之路(X5)- 整合JPA
    发表于 06-10 14:52

    怎样去使用springboot

    怎样去使用springboot呢?学习springboot需要懂得哪些?
    发表于 10-25 07:13

    SpringBoot嵌入式Servlet容器启动原理是什么

    SpringBoot嵌入式Servlet容器启动原理思维导图
    发表于 12-20 07:26

    SpringBoot应用启动运行run方法

    什么时候创建嵌入式的Servlet容器工厂?什么时候获取嵌入式的Servlet容器并启动Tomcat;获取嵌入式的Servlet容器工厂:1)、SpringBoot应用启动运行run方法2
    发表于 12-20 06:16

    嵌入式Servlet容器启动原理

    SpringBoot源码学习系列之嵌入式Servlet容器启动原理SpringBoot的自动配置就是SpringBoot的精髓所在,对于Spring
    发表于 12-22 07:23

    基于ARM的Bootloader启动流程研究

    基于ARM的Bootloader启动流程研究
    发表于 10-30 16:22 10次下载
    基于ARM的Bootloader<b class='flag-5'>启动</b><b class='flag-5'>流程</b>研究

    SpringBoot如何实现启动过程中执行代码

    目前开发的SpringBoot项目在启动的时候需要预加载一些资源。而如何实现启动过程中执行代码,或启动成功后执行,是有很多种方式可以选择,我们可以在static代码块中实现,也可以在构
    的头像 发表于 06-20 17:32 1456次阅读

    说说SpringBoot启动流程

    首先从main找到run()方法,在执行run()方法之前new一个SpringApplication对象
    的头像 发表于 03-28 17:52 1457次阅读

    什么是 SpringBoot

    本文从为什么要有 `SpringBoot`,以及 `SpringBoot` 到底方便在哪里开始入手,逐步分析了 `SpringBoot` 自动装配的原理,最后手写了一个简单的 `start` 组件,通过实战来体会了 `
    的头像 发表于 04-07 11:28 1315次阅读
    什么是 <b class='flag-5'>SpringBoot</b>?

    SpringBoot的核心注解1

    今天跟大家来探讨下SpringBoot的核心注解@SpringBootApplication以及run方法,理解下springBoot为什么不需要XML,达到零配置
    的头像 发表于 04-07 14:34 707次阅读
    <b class='flag-5'>SpringBoot</b>的核心注解1

    SpringBoot的核心注解2

    今天跟大家来探讨下SpringBoot的核心注解@SpringBootApplication以及run方法,理解下springBoot为什么不需要XML,达到零配置
    的头像 发表于 04-07 14:34 1964次阅读
    <b class='flag-5'>SpringBoot</b>的核心注解2

    使用springboot完成流程的业务功能

    图 使用springboot开发流程使用的接口完成流程的业务功能 基于 Spring Boot + MyBatis Plus + Vue Element 实现的后台管理系统 + 用户小程序,支持 RBAC
    的头像 发表于 05-15 17:40 731次阅读
    使用<b class='flag-5'>springboot</b>完成<b class='flag-5'>流程</b>的业务功能

    STM32的完整启动流程分析

    STM32的完整启动流程分析
    的头像 发表于 10-25 16:00 1399次阅读
    STM32的完整<b class='flag-5'>启动</b><b class='flag-5'>流程</b>分析