课程简介
为什么读懂 Spring 源码是后端进阶的分水岭 很多开发者在 Spring Boot 框架下工作多年,习惯于基于注解和自动配置进行开发,一旦遇到 Bean 循环依赖、事务失效或动态代理异常等深层问题,往往只能靠试错解决,缺乏底层排查能力。这份资料聚焦 Spring Framework 核心机制的源码拆解,旨在填补从「会用框架」到「理解原理」之间的认知断层…
为什么读懂 Spring 源码是后端进阶的分水岭
很多开发者在 Spring Boot 框架下工作多年,习惯于基于注解和自动配置进行开发,一旦遇到 Bean 循环依赖、事务失效或动态代理异常等深层问题,往往只能靠试错解决,缺乏底层排查能力。这份资料聚焦 Spring Framework 核心机制的源码拆解,旨在填补从「会用框架」到「理解原理」之间的认知断层。课程不纠缠于繁杂的 Spring MVC 请求处理或 Spring Security 鉴权细节,而是集中火力解析 IoC 容器最本质的部分:Bean 的生命周期管理与依赖注入过程。对于正处于瓶颈期、试图通过阅读源码提升技术深度的 Java 后端开发者而言,这是一份针对性极强的工程参考。
内容结构与学习路径建议
资料结构遵循由浅入深的逻辑,对开发者的基础有一定要求,建议具备扎实的 Java 语法基础,并熟悉面向对象设计模式及反射机制后再开始学习,否则直接切入源码可能会感到吃力。建议按照以下顺序对照实践:首先观看「手写模拟 Spring 核心工作原理」章节,这一步至关重要,它能帮助你在脱离官方代码复杂度之前,先建立对核心设计模式的宏观认知,理解容器如何管理对象,为后续阅读复杂源码建立心理模型。
- 核心基础:重点研读 FactoryBean 创建过程及依赖注入底层源码。这是理解 Spring 如何组装对象图的基石,建议边看边在本地 IDE 中打断点,跟踪代码执行流,观察 BeanDefinition 是如何被解析和注册的。
- 生命周期深潜:Bean 的创建与销毁过程是课程的重头戏,分为上下多节详细讲解。需重点关注扩展点接口如 BeanPostProcessor 的作用时机,并配合 Spring 6 多线程异步创建非懒加载单例 Bean 的扩展内容,了解新版本在并发场景下的优化思路与潜在坑点。
- 源码对照:在学习过程中,务必打开对应版本的 Spring 源码,跟随视频中的方法调用栈进行追踪,将视频中的逻辑映射到 AbstractAutowireCapableBeanFactory 等核心类上,实现从现象到本质的跨越。
学完能独立做什么
完成这套资料的学习并配合源码验证后,你将具备独立分析 Spring Bean 初始化全流程的能力。具体表现为:能够清晰阐述 Bean 从实例化到销毁的完整生命周期节点,包括实例化、属性填充、初始化及销毁各个阶段;能够理解并手动实现简单的 FactoryBean 和 BeanPostProcessor,从而在项目中灵活控制 Bean 的创建行为;在面对复杂的依赖注入异常时,能够快速定位是属性填充阶段还是后置处理器阶段的问题,不再盲目猜测。这份资料的价值在于提供了一套可落地的工程视角,而非空洞的理论概述,适合希望构建扎实底层内功的开发者作为案头参考资料反复查阅,将知识转化为实际的问题解决能力。
课程介绍
QQ_1758368307599.png (224.95 KB, 下载次数: 0) 2025-9-20 19:40 上传 78805a221a988e7-24.png (15.28 KB, 下载次数: 0) 2025-9-20 19:41 上传 第1章 Spring Framework 1-1 一节课手写模拟Spring核心工作原理-1 .mp4 1-10 FactoryBean创建过程底层源码解析 .mp4 1-11 Bean创建过程生命周期源码解析(上) .mp4 1-12 Bean创建过程生命周期源码解析(下)-1 .mp4 1-13 Bean创建过程生命周期源码解析(下)-2 .mp4 1-14 Bean销毁过程生命周期源码解析 .mp4 1-15 扩展:Spring6新特性之多线程异步创建非懒加载单例Bean .mp4 1-16 依赖注入过程底层源码解析(上)-1 .mp4 1-
课程目录
第 1 部分1 条
- QQ_1758368307599.png (224.95 KB, 下载次数: 0) 2025-9-20 19:40 上传 78805a221a988e7-24.png (15.28 KB, 下载次数: 0) 2025-9-20 19:41 上传
第1章 Spring Framework1 集
- 1-1 一节课手写模拟Spring核心工作原理-1 .mp4 1-10 FactoryBean创建过程底层源码解析 .mp4 1-11 Bean创建过程生命周期源码解析(上) .mp4 1-12 Bean创建过程生命周期源码解析(下)-1 .mp4 1-13 Bean创建过程生命周期源码解析(下)-2 .mp4 1-14 Bean销毁过程生命周期源码解析 .mp4 1-15 扩展:Spring6新特性之多线程异步创建非懒加载单例Bean .mp4 1-16 依赖注入过程底层源码解析(上)-1 .mp4 1-17 依赖注入过程底层源码解析(上)-2 .mp4 1-18 依赖注入过程底层源码解析(中)-1 .mp4 1-19 依赖注入过程底层源码解析(中)-2 .mp4 1-2 一节课手写模拟Spring核心工作原理-2 .mp4 1-20 扩展:Spring6新特性之@Fallback注解源码分析 .mp4 1-21 依赖注入过程底层源码解析(下) .mp4 1-22 推断构造方法底层源码解析(上)-1 .mp4 1-23 推断构造方法底层源码解析(上)-2 .mp4 1-24 推断构造方法底层源码解析(下)-1 .mp4 1-25 推断构造方法底层源码解析(下)-2 .mp4 1-26 推断@Bean方法底层源码解析 .mp4 1-27 扩展:@Lookup注解和MethodReplacer底层源码解析 .mp4 1-28 Spring容器启动过程源码解析-1 .mp4 1-29 Spring容器启动过程源码解析-2 .mp4 1-3 BeanDefinition扫描过程源码解析-1 .mp4 1-30 Spring事件监听机制底层源码解析 .mp4 1-31 扩展:Spring6新特性之BeanFactoryInitializer机制底层源码解析 .mp4 1-32 BeanFactoryPostProcessor底层源码解析-1 .mp4 1-33 BeanFactoryPostProcessor底层源码解析-2 .mp4 1-34 Spring配置类解析过程底层源码解析-1 .mp4 1-35 Spring配置类解析过程底层源码解析-2 .mp4 1-36 Full配置类和Lite配置类之间的区别和底层源码解析 .mp4 1-37 beanName冲突的不同情况处理过程底层源码解析 .mp4 1-38 Spring整合MyBatis底层源码解析 .mp4 1-39 为什么Spring整合MyBatis之后一级缓存会失效 .mp4 1-4 BeanDefinition扫描过程源码解析-2 .mp4 1-40 Spring AOP底层源码解析(上)-1 .mp4 1-41 Spring AOP底层源码解析(上)-2 .mp4 1-42 Spring AOP底层源码解析(上)-3 .mp4 1-43 Spring AOP底层源码解析(下) .mp4 1-44 Spring AOP中Advisor顺序的底层源码解析与验证 .mp4 1-45 Spring事务底层源码解析-1 .mp4 1-46 Spring事务底层源码解析-2 .mp4 1-47 Spring事务底层源码解析-3 .mp4 1-48 Spring事务同步器和savepoint底层源码解析 .mp4 1-49 Spring6新特性之:TransactionExecutionListener的作用和底层源码解析 .mp4 1-5 Spring源码中核心组件的使用与解析-1 .mp4 1-50 Spring事务失效的几种场景和底层原理分析 .mp4 1-51 Spring Async异步机制底层源码解析 .mp4 1-52 AsyncConfigurer的作用和底层源码解析 .mp4 1-53 Spring Scheduling定时任务底层源码解析 .mp4 1-54 Spring Cache缓存机制底层源码解析-1 .mp4 1-55 Spring Cache缓存机制底层源码解析-2 .mp4 1-56 Spring循环依赖底层源码解析-1 .mp4 1-57 Spring循环依赖底层源码解析-2 .mp4 1-6 Spring源码中核心组件的使用与解析-2 .mp4 1-7 扩展:ComponentsIndex机制的作用和底层实现 .mp4 1-8 扩展:ScopedProxyMode的作用和底层实现 .mp4 1-9 扩展:什么是JFR?Spring中是如何利用它的 .mp4
第2章 Spring MVC1 集
- 2-1 Spring MVC启动初始化过程底层源码解析(上) .mp4 2-2 Spring MVC启动初始化过程底层源码解析(下) .mp4 2-3 Spring MVC请求处理过程底层源码解析-1 .mp4 2-4 Spring MVC请求处理过程底层源码解析-2 .mp4 2-5 Spring MVC请求处理过程底层源码解析-3 .mp4 2-6 Spring MVC文件上传处理流程底层源码解析 .mp4 2-7 Spring MVC中ControllerAdvice机制的底层源码解析 .mp4 2-8 @EnableWebMvc对应功能底层源码解析 .mp4 2-9 Spring MVC异常处理机制和拦截器底层源码解析 .mp4
第3章 Spring Boot1 集
- 3-1 一节课手写模拟SpringBoot核心工作原理-1 .mp4 3-10 ConfigurationProperties属性绑定机制底层源码解析 .mp4 3-11 Spring6新特性:Spring AOT的使用与底层源码解析-1 .mp4 3-12 Spring6新特性:Spring AOT的使用与底层源码解析-2 .mp4 3-2 一节课手写模拟SpringBoot核心工作原理-2 .mp4 3-3 SpringBoot启动过程底层源码解析-1 .mp4 3-4 SpringBoot启动过程底层源码解析-2 .mp4 3-5 SpringBoot配置顺序优先级详解-1 .mp4 3-6 SpringBoot配置顺序优先级详解-2 .mp4 3-7 SpringBoot自动配置功能底层源码解析 .mp4 3-8 Spring AOP和Spring事务的自动配置类解析 .mp4 3-9 Tomcat和Spring MVC相关的自动配置类源码解析 .mp4
第4章 mybatis1 集
- 4-1 一节课掌握MyBatis核心源码流程 .mp4 4-10 SQL执行流程之参数解析过程底层源码分析 .mp4 4-11 SQL执行流程之SQL解析过程底层源码分析 .mp4 4-12 SQL执行流程之一级二级缓存机制底层源码分析 .mp4 4-13 SQL执行流程之结果处理核心流程底层源码分析 .mp4 4-14 结果处理之association和嵌套查询的底层源码解析 .mp4 4-15 结果处理之collection和嵌套ResultMap的底层源码分析 .mp4 4-16 结果处理之discriminator鉴别器的底层源码分析 .mp4 4-17 结果处理之多ResultMap以及多ResultSet的底层源码解析 .mp4 4-18 结果处理之延迟查询机制底层源码解析 .mp4 4-19 @SelectKey和KeyGenerator底层源码解析 .mp4 4-2 SpringBoot整合MyBatis底层源码分析 .mp4 4-20 Plugin机制底层源码解析 .mp4 4-3 配置文件解析之properties和settings源码解析 .mp4 4-4 配置文件解析之typeAliases和typeHandlers源码解析 .mp4 4-5 配置文件解析之自定义TypeHandler以及TypeHandler匹配过程 .mp4 4-6 配置文件解析之DefaultVFS的使用场景分析 .mp4 4-7 配置文件解析之MappedStatement扫描过程源码解析 .mp4 4-8 配置文件解析之Environment和DatabaseId的作用和底层源码解析 .mp4 4-9 配置文件解析之什么是Java中的泛型擦除和桥接方法? .mp4
第5章 mybaits plus1 集
- 5-1 一节课掌握MyBatis-Plus的基本应用和核心工作原理 .mp4 5-10 扩展机制之自动生成ID机制源码解析 .mp4 5-11 扩展机制之自动填充机制源码解析 .mp4 5-12 扩展机制之自动映射枚举机制源码解析 .mp4 5-13 扩展机制之自动维护DDL机制源码解析 .mp4 5-14 插件机制之插件主体底层源码解析 .mp4 5-15 插件机制之分页插件底层源码解析 .mp4 5-16 插件机制之乐观锁插件底层源码解析 .mp4 5-17 插件机制之多租户插件底层源码解析 .mp4 5-18 插件机制之数据权限插件底层源码解析 .mp4 5-19 插件机制之动态表名插件底层源码解析 .mp4 5-2 SQL注入器的基本使用和底层源码分析 .mp4 5-20 插件机制之数据变动记录插件底层源码解析 .mp4 5-21 插件机制之非法SQL拦截插件底层源码解析 .mp4 5-22 插件机制之防全表更新与删除插件底层源码解析 .mp4 5-23 动态数据源dynamic-datasource底层源码解析 .mp4 5-3 MyBatis-Plus中的批量执行与源码分析 .mp4 5-4 核心组件之BaseMapper中CURD方法底层源码详解 .mp4 5-5 核心组件之IService的使用和批量机制源码分析 .mp4 5-6 核心组件之Wrapper条件构造器底层源码解析 .mp4 5-7 核心组件之Model机制和底层源码解析 .mp4 5-8 配置解析之MyBatis-Plus自动配置类源码解析 .mp4 5-9 配置解析之TableInfo表信息解析源码解析(上) .mp4 5-9 配置解析之TableInfo表信息解析源码解析(下) .mp4
第6章 Spring Cloud Gateway源码1 集
- 6-1 响应式编程框架Reactor的基本使用与原理分析 .mp4 6-10 手写模拟实现Spring Cloud Gateway(下) .mp4 6-11 Spring Cloud Gateway核心源码解析 .mp4 6-12 内置匹配器RoutePredicateFactory源码解析 .mp4 6-13 内置全局过滤器底层源码解析(上) .mp4 6-15 内置过滤器GatewayFilterFactory源码解析 .mp4 6-16 Spring Cloud Gateway跨域底层源码分析 .mp4 6-2 Reactor-Netty框架的基本使用与底层原理分析 .mp4 6-3 Spring WebFlux的基本使用与底层原理分析 .mp4 6-4 Spring Cloud Gateway的基本使用 .mp4 6-4 内置全局过滤器底层源码解析(下) .mp4 6-5 Spring Cloud gateway实战之统一认证鉴权 .mp4 6-6 Spring Cloud Gateway实战之ip地址黑白名单 .mp4 6-7 Spring Cloud Gateway实战之防xss跨站脚本攻击 .mp4 6-8 Spring Cloud Gateway整合Sentinel进行限流 .mp4 6-9 手写模拟实现Spring Cloud Gateway(上) .mp4
第7章 OpenFeign1 集
- 7-1 OpenFeign的基本使用和FeignClient扫描源码分析 .mp4 7-10 OpenFeign中的调用重试机制底层源码解析 .mp4 7-11 OpenFeign动态刷新URL机制底层源码解析 .mp4 7-2 FeignClient代理对象创建过程底层源码解析 .mp4 7-3 FeignClient代理对象执行方法过程底层源码解析 .mp4 7-4 OpenFeign解析SpringMVC各个注解底层源码解析-1 .mp4 7-5 OpenFeign解析SpringMVC各个注解底层源码解析-2 .mp4 7-6 Encoder和Decoder以及Interceptor机制底层源码解析 .mp4 7-7 OpenFeign多种配置方式底层源码解析-1 .mp4 7-8 OpenFeign多种配置方式底层源码解析-2 .mp4 7-9 OpenFegin整合Sentinel服务降级底层源码解析 .mp4
第8章 LoadBalancer2 集
- 8-1 Spring Cloud LoadBalancer的使用与底层源码解析-1 .mp4 8-2 Spring Cloud LoadBalancer的使用与底层源码解析-2 .mp4
- 第9章 Nacos 9-1 Nacos的功能介绍与应用实战(上) .mp4 9-10 集群模式下服务注册与注销底层源码解析 .mp4 9-11 客户端连接断开后服务端注销实例源码解析 .mp4 9-12 Spring Cloud整合Nacos服务注册与发现底层源码解析 .mp4 9-13 Nacos配置中心新增和读取以及加解密底层源码 .mp4 9-14 Nacos配置监听底层源码解析 .mp4 9-15 Spring Cloud整合Nacos配置中心底层源码解析 .mp4 9-16 @RefreshScope和@ConfigurationProperties刷新源码 .mp4 9-17 加餐:Nacos 3.0新特性介绍和底层分析 .mp4 9-2 Nacos的功能介绍与应用实战(下) .mp4 9-3 Protocol Buffers与gRPC的入门实战 .mp4 9-4 单机模式服务注册流程底层源码解析 .mp4 9-5 Nacos底层gRPC发送请求底层源码解析 .mp4 9-6 NamingService创建过程底层源码解析 .mp4 9-7 服务发现与自动订阅底层源码解析 .mp4 9-8 服务注销与持久实例注册底层源码解析 .mp4 9-9 Nacos服务订阅与解约底层源码解析 .mp4
第10章 Sentinel1 集
- 10-1 Sentinel入门到高级应用实战 .mp4 10-2 Sentienl各种规则应用实战 .mp4 10-3 Sentinel中Slot Chain调用流程核心源码分析 .mp4 10-4 Sentinel中限流和熔断器底层源码解析 .mp4 10-5 手写模拟实现固定时间窗口和滑动时间窗口 .mp4 10-6 手写令牌桶算法和Sentinel漏桶算法解析 .mp4
第11章 Seata1 集
- 11-1 Seata的功能介绍与应用实战 .mp4 11-2 Seata的全局事务开启、提交、回滚源码解析-1 .mp4 11-3 Seata的全局事务开启、提交、回滚源码解析-2 .mp4 11-4 Seata的分支事务注册、提交、回滚底层源码解析 .mp4 11-5 GlobalLock全局锁的底层源码解析 .mp4 11-6 Seata的TCC模式工作流程底层源码解析 .mp4
第12章 Spring AI1 集
- 12-1 Spring AI之基本应用与核心源码解析-1 .mp4 12-10 Spring AI Observability可观测机制实战 .mp4 12-11 Spring AI Alibaba实战与底层源码解析-1 .mp4 12-12 Spring AI Alibaba实战与底层源码解析-2 .mp4 12-2 Spring AI之基本应用与核心源码解析-2 .mp4 12-3 Spring AI之RAG实战与底层源码解析-1 .mp4 12-4 Spring AI之RAG实战与底层源码解析-2 .mp4 12-5 RetrievalAugmentationAdvisor与幻觉评估器 .mp4 12-6 Spring AI之Tool Calling实战与底层源码解析-1 .mp4 12-7 Spring AI之Tool Calling实战与底层源码解析-2 .mp4 12-8 Spring AI之MCP实战与底层源码解析-1 .mp4 12-9 Spring AI之MCP实战与底层源码解析-2 .mp4
第13章 Spring Data JPA1 集
- 13-1 Spring Data JPA的功能介绍与应用实战-1 .mp4 13-2 Spring Data JPA的功能介绍与应用实战-2 .mp4 13-3 手写模拟Spring Data JPA .mp4 13-4 Spring Data JPA代理对象执行过程底层源码解析 .mp4 13-5 Spring Data JPA扫描过程和代理对象生成过程底层源码解析-1 .mp4 13-6 Spring Data JPA扫描过程和代理对象生成过程底层源码解析-2 .mp4
第14章 Spring Security1 集
- 14-1 Spring Security认证功能实战与底层分析-1 .mp4 14-2 Spring Security认证功能实战与底层分析-2 .mp4 14-3 Spring Security .mp4 14-4 Spring Boot向Tomcat添加Filter或Servlet以及底层分析 .mp4 14-5 Spring Security底层实现架构源码分析 .mp4 14-6 Spring Security各种Filter底层源码分析-1 .mp4 14-7 Spring Security各种Filter底层源码分析-2 .mp4 14-8 Spring Security授权功能实战与底层分析 .mp4 课程资料