
springboot源码
文章平均质量分 97
springboot源码
冬天vs不冷
Java开发工程师,专注于分享和记录当前流行技术,涵盖从基础使用到源码解析的各个方面(互关互三)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringBoot源码解析(一):SpringApplication构造方法
在之前的文章中,我们深入研究了Tomcat、Spring、以及SpringMVC的源码。这次,我们终于来到SpringBoot的源码分析。接下来的几篇文章将重点关注SpringBoot的启动原理和自动配置原理。本篇文章将聚焦于SpringApplication的构造方法。基于2.7.18版本,这也是SpringBoot3发布前的最后一个版本。方法是启动SpringBoot应用的核心入口。我们从这个方法开始,逐步深入。是 Spring 框架中的一个关键配置文件,通常位于类路径下的META-INF目录中。原创 2025-08-07 14:02:37 · 10756 阅读 · 338 评论 -
SpringBoot源码解析(二):引导上下文DefaultBootstrapContext
前文深入解析SpringApplication构造方法,而接下来的几篇文章将重点介绍run方法的执行逻辑。SpringApplication的run方法的执行逻辑如下,本文将详细介绍第一小节:创建引导上下文// SpringApplication类方法// 记录应用启动的开始时间// 1.创建引导上下文,用于管理应用启动时的依赖和资源// 配置无头模式属性,以支持在无图形环境下运行// 将系统属性 java.awt.headless 设置为 true。原创 2025-08-07 07:00:00 · 3914 阅读 · 334 评论 -
SpringBoot源码解析(十):应用上下文AnnotationConfigServletWebServerApplicationContext构造方法
SpringBoot源码系列文章SpringBoot源码解析(一):SpringApplication构造方法SpringBoot源码解析(二):引导上下文DefaultBootstrapContextSpringBoot源码解析(三):启动开始阶段SpringBoot源码解析(四):解析应用参数argsSpringBoot源码解析(五):准备应用环境SpringBoot源码解析(六):打印BannerSpringBoot源码解析(七):应用上下文结构体系??在前文中,我们深入解析了启动Banner的类型打原创 2025-08-07 07:30:00 · 7920 阅读 · 226 评论 -
SpringBoot源码解析(四):解析应用参数args
前文深入解析了SpringBoot启动的开始阶段,包括获取和启动应用启动监听器、事件与广播机制,以及如何通过匹配监听器实现启动过程各阶段的自定义逻辑。接下来,我们将探讨SpringBoot启动类main函数中的参数args的作用及其解析过程。SpringBoot版本2.7.18SpringApplication的run方法的执行逻辑如下,本文将详细介绍第3小节:解析应用参数// SpringApplication类方法// 记录应用启动的开始时间。原创 2025-08-07 07:30:00 · 3930 阅读 · 404 评论 -
SpringBoot源码解析(八):Bean工厂接口体系
在前文中,我们详细概述了SpringBoot架构中应用上下文结构体系的各个组件。其中,通用应用上下文(GenericApplicationContext)通过创建负责注册、管理和创建Bean定义,同时支持依赖注入和动态Bean管理。结构相对复杂,接下来我们将对其组件逐一进行介绍。是Spring框架中BeanFactory接口的抽象实现,负责提供Bean的基础获取和管理功能,但不包含具体的Bean创建逻辑。//表示当前BeanFactory的父工厂(支持层级结构),用于递归地从父工厂中查找Bean。原创 2025-08-07 10:26:33 · 3312 阅读 · 203 评论 -
SpringBoot源码解析(十一):准备应用上下文
在前文中,我们介绍了应用上下文的构造方法初始化两个组件:注解Bean定义读取器和类路径Bean定义扫描器,接下来,我们将探究下准备应用上下文阶段对外的扩展点。SpringBoot版本2.7.18SpringApplication的run方法的执行逻辑如下,本文将详细介绍第8小节:刷新上下文// SpringApplication类方法// 记录应用启动的开始时间// 1.创建引导上下文,用于管理应用启动时的依赖和资源// 配置无头模式属性,以支持在无图形环境下运行。原创 2025-08-07 07:30:00 · 2465 阅读 · 259 评论 -
SpringBoot源码解析(七):应用上下文结构体系
在解析SpringBoot源码之前,需要对其使用的应用上下文(ApplicationContext)相关组件有清晰的了解。SpringBoot的核心在于基于Spring的扩展,其自动配置机制、嵌入式Web容器等特性都依赖于一套规范的上下文组件。因此,提前理清这些核心组件的功能和职责,可以显著提高源码阅读的效率,避免频繁地在代码中跳转而迷失方向。SpringBoot在调用方法启动时,根据应用类型(如 Servlet 类型)通过方法推断并创建,用于初始化和管理 Web 应用的上下文环境。原创 2025-08-07 07:30:00 · 3446 阅读 · 255 评论 -
SpringBoot源码解析(六):打印Banner
在前文中,我们深入解析了SpringBoot启动时应用环境的准备过程。接下来将深入介绍启动Banner打印的具体实现及流程。SpringBoot版本2.7.18SpringApplication的run方法的执行逻辑如下,本文将详细介绍第5小节:打印启动Banner// SpringApplication类方法// 记录应用启动的开始时间// 1.创建引导上下文,用于管理应用启动时的依赖和资源// 配置无头模式属性,以支持在无图形环境下运行。原创 2025-08-07 07:30:00 · 4579 阅读 · 367 评论 -
SpringBoot源码解析(三):启动开始阶段
前文深入解析了引导上下文作为组件存储容器的角色,接下来将进入启动开始阶段的内容。SpringBoot版本2.7.18SpringApplication的run方法的执行逻辑如下,本文将详细介绍第二小节:获取启动监听器,调用启动开始方法// SpringApplication类方法// 记录应用启动的开始时间// 1.创建引导上下文,用于管理应用启动时的依赖和资源// 配置无头模式属性,以支持在无图形环境下运行// 将系统属性 java.awt.headless 设置为 true。原创 2025-08-07 07:30:00 · 3065 阅读 · 289 评论 -
SpringBoot源码解析(五):准备应用环境
在前文中,我们深入解析了启动类main函数中args参数被解析为选项参数和非选项参数的过程。接下来,我们将探讨SpringBoot启动时应用环境的准备过程,包括读取配置文件和设置环境变量的步骤。SpringBoot版本2.7.18SpringApplication的run方法的执行逻辑如下,本文将详细介绍第4小节:准备应用环境// SpringApplication类方法// 记录应用启动的开始时间// 1.创建引导上下文,用于管理应用启动时的依赖和资源。原创 2025-08-07 07:30:00 · 4409 阅读 · 364 评论