- 课程目录
- 课程介绍
-
在线阅读:开篇词|“眼脑手”结合,搞定Spring框架底层原理
有匪君子,如切如磋,如琢如磨
-
01|原始IoC:如何通过BeanFactory实现原始版本的IoC容器?
用原始的IoC容器来管理一个Bean
-
02|扩展Bean:如何配置constructor、property和init-method?
配置constructor、property和init-method
-
03|依赖注入:如何给Bean注入值并解决循环依赖问题?
继续手写MiniSpring,探讨Bean的依赖注入
-
04|增强IoC容器:如何让我们的Spring支持注解?
实现Autowired注解,并用这个方式进行依赖注入
-
05|实现完整的IoC容器:构建工厂体系并添加容器事件
建立BeanFactory体系,添加容器事件
-
06|再回首:如何实现一个IoC容器?
实现一个IoC容器
-
07|原始MVC:如何通过单一的Servlet拦截请求分派任务?
通过单一的Servlet拦截请求分派任务
-
08|整合IoC和MVC:如何在Web环境中启动IoC容器?
在Web环境中启动IoC容器
-
09|分解Dispatcher:如何把专门的事情交给专门的部件去做?
分解Dispatcher
-
10|数据绑定: 如何自动转换传入的参数?
自动转换传入的参数
-
11|ModelAndView :如何将处理结果返回给前端?
将处理结果返回给前端
-
12|再回首:如何实现Spring MVC?
MVC负责处理一个Web应用程序中的核心过程
-
13|JDBC访问框架:如何抽取JDBC模板并隔离数据库?
数据访问的特性
-
14|增强模板:如何抽取专门的部件完成专门的任务?
如何抽取专门的部件完成专门的任务?
-
15|mBatis:如何将SQL语句配置化?
mBatis:如何将SQL语句配置化?
-
16|再回首:JdbcTemplate章节小结
JdbcTemplate章节小结
-
17|动态代理:如何在运行时插入逻辑?
如何在运行时插入逻辑?
-
18|拦截器 :如何在方法前后进行拦截?
如何在方法前后进行拦截?
-
19|Pointcut :如何批量匹配代理方法?
Pointcut :如何批量匹配代理方法?
-
20|AutoProxyCreator:如何自动添加动态代理?
如何自动添加动态代理?
-
21|再回首: 如何实现Spring AOP?
实现Spring AOP
-
结束语|老兵回首,薪火相传
老兵回首,薪火相传
-
期末测试|来赴一场满分之约吧!
来赴一场满分之约吧!
-
加餐|GPT编程(上) :如何用ChatGPT辅助我们编程?
如何用ChatGPT辅助我们编程?
-
加餐|GPT编程(下) :如何利用OpenAI的API解决语言处理类任务?
如何利用OpenAI的API解决语言处理类任务?
课程介绍
你将获得 Spring 核心源码即学即用 系统掌握 IoC、AOP 等核心功能 俯瞰 Spring 项目演进全过程 30 年技术老兵的 Spring 编程心法 讲师介绍 课程介绍 虽然 Spring...你将获得
- Spring 核心源码即学即用
- 系统掌握 IoC、AOP 等核心功能
- 俯瞰 Spring 项目演进全过程
- 30 年技术老兵的 Spring 编程心法
讲师介绍
课程介绍
虽然 Spring 是开源的,但是面对如此庞大且复杂的源代码,很多技术人都会迷失其中。因此我们邀请到了前 Sun Microsystems Java 研发工程师,开源软件 MiniSpring、MiniTomcat 开发者郭屹,他将采取快速迭代的开发模式,从一个最简单的程序开始,一步步堆积演化,完善框架功能,最终实现 Spring 框架的核心:IOC、MVC、JDBC Template 和 AOP。
在这一步步的迭代过程中,我们会将Spring的底层原理融入代码中,一层层对照 Spring 框架的现有结构,让原理理解起来不再困难,让你应用起来更加得心应手。
课程设计
课程分成四大部分:IoC 容器、MVC、JDBC Tempalte 和 AOP。熟悉 Spring 框架的人也知道,这四大部分就是 Spring 框架的核心了。学好这些,今后你扩展到更多方面也会很容易。

第一部分:IoC 容器
这个部分我们会从一个极简的 IoC 容器开始,逐步扩展增强,最终实现一个完整的 IoC 容器,包含 Spring 框架对应的核心功能,实现 Bean 的管理。基于这个核心,逐步扩展到 MiniSpring 的其他特性。
第二部分:MVC
MVC 是 Spring 支持 Web 模式的程序结构,这个部分会带你先实现一个原始的 MVC 结构,然后会把 MVC 与第一部分的 IoC 容器结合起来,构成一个更大、更完整的框架。在一步步的构造过程中,你可以了解大师们是怎么逐步拆解这个 Servlet 的功能的,把专业的事情交给专门的部件去做,最后构建成一个完整的体系。
第三部分:JDBC Tempalte
JDBC Tempalte 是 Spring 对数据访问的一个实现。通过这部分的学习,你可以了解到整个 JDBC Template 的实现都是运用了前面 IoC 管理 Bean 的方式,将数据的访问抽象成一个个 Bean,注入到系统中。你会更深刻地体会到 IoC 容器的功用。
第四部分:AOP
AOP 是 Spring 框架中实践面向切面编程的探索。面向对象和面向切面,两者一纵一横,编织成完整的程序结构。在这一部分,你会了解到 Spring AOP 所采用的一个实现方式:JDK 动态代理。了解其中的原理,还有用这个技术动态插入业务逻辑的方法。
最后你将再一次看到 AOP 与 IoC 的结合,使用 BeanPostProcessor,通过自动化机制生成动态代理。这时你就会体会到 “IoC 是 Spring 框架核心中的核心”这句话的深层含义了。
课程目录

适合人群
本课程适合已经学习过 Spring 框架并进行过编程实践,但对 Spring 框架底层的原理及设计模式认知不够深入的工程师加入学习。