前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >SpringBoot 启动流程简介

SpringBoot 启动流程简介

作者头像
用户6256742
发布2024-06-20 14:05:05
发布2024-06-20 14:05:05
8000
代码可运行
举报
文章被收录于专栏:网络日志网络日志
运行总次数:0
代码可运行

SpringBoot的启动

代码语言:javascript
代码运行次数:0
复制
@SpringBootApplication  
public class SpringbootLectureApplication {  
    public static void main(String[] args) {  
        SpringApplication.run(SpringbootLectureApplication.class, args);  
    }  
}

在调用run()方法前

  • 调用run()方法前,需要先实例化 SpringApplication
SpringBoot 启动流程简介
SpringBoot 启动流程简介
  • 会创建SpringFactoriesInstances
    • 就是实例化一些必须组件以及可能用的到的组件,也就是自动配置。
    • 主要是通过spring.factories文件定位。该文件有列出需要实例化的组件。
    SpringBoot 启动流程简介
    SpringBoot 启动流程简介
    SpringBoot 启动流程简介
    SpringBoot 启动流程简介
  • 其中实例化相关组件时涉及到一个重要类,SpringFactoriesLoader。
    • 它是从“META-INF/spring.factories”文件加载并实例化给定类型的工厂,这些文件可能存在于类路径中的多个 JAR 文件中。 spring.factories 文件必须采用 Properties 格式,其中key是接口或抽象类的完全限定名称,value是逗号分隔的实现类名称列表(list)。
    • 实例化就少不了类加载,这里Spring 显式获取类记载器,是因为这些组件暂时没有被使用,所以不会被jvm自带的三个类加载器加载。但是 spring.factories提供了类的全限定名,那么类加载器就可以直接加载它们,而不是等到使用时再去加载它们。
    SpringBoot 启动流程简介
    SpringBoot 启动流程简介

调用run()方法

  • 实例化SpringApplication后就是调用run()方法了。
  • 大致了解其流程。
SpringBoot 启动流程简介
SpringBoot 启动流程简介

小结

  • Spring Boot 的设计理念是简化配置和快速启动,而传统 Spring 则需要更多手动配置和设置。Spring Boot 通过自动配置、内嵌服务器和starter依赖等功能,让开发者可以更快地启动和部署应用程序,而传统 Spring 提供了更细粒度的控制和配置选项,但可能需要更多的设置工作。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SpringBoot的启动
    • 在调用run()方法前
    • 调用run()方法
    • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档