获取资料

极客时间-手把手带你写一个MiniSpring「已完结」

课程介绍

极客时间-手把手带你写一个MiniSpring,由整理发布。课程分成四大部分: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 框架核心中的核心”这句话的深层含义了。

资源目录

[ 15M] 01原始IoC:如何通过BeanFactory实现原始版本的IoC容器?.mp3

[3.6M] 01原始IoC:如何通过BeanFactory实现原始版本的IoC容器?.pdf

[ 13M] 02扩展Bean:如何配置constructor、property和init-method?.mp3

[4.3M] 02扩展Bean:如何配置constructor、property和init-method?.pdf

[ 18M] 03依赖注入:如何给Bean注入值并解决循环依赖问题?.mp3

[4.2M] 03依赖注入:如何给Bean注入值并解决循环依赖问题?.pdf

[ 13M] 04增强IoC容器:如何让我们的Spring支持注解?.mp3

[3.7M] 04增强IoC容器:如何让我们的Spring支持注解?.pdf

[ 10M] 05实现完整的IoC容器:构建工厂体系并添加容器事件.mp3

[3.7M] 05实现完整的IoC容器:构建工厂体系并添加容器事件.pdf

[3.6M] 06再回首:如何实现一个IoC容器?.mp3

[2.0M] 06再回首:如何实现一个IoC容器?.pdf

[ 11M] 07原始MVC:如何通过单一的Servlet拦截请求分派任务?.mp3

[4.8M] 07原始MVC:如何通过单一的Servlet拦截请求分派任务?.pdf

[ 18K] 08整合IoC和MVC:如何在Web环境中启动IoC容器?.md

[ 10M] 08整合IoC和MVC:如何在Web环境中启动IoC容器?.mp3

[2.8M] 08整合IoC和MVC:如何在Web环境中启动IoC容器?.pdf

[ 23K] 09分解Dispatcher:如何把专门的事情交给专门的部件去做?.md

[9.0M] 09分解Dispatcher:如何把专门的事情交给专门的部件去做?.mp3

[1.5M] 09分解Dispatcher:如何把专门的事情交给专门的部件去做?.pdf

[ 26K] 10数据绑定-如何自动转换传入的参数?.md

[ 10M] 10数据绑定-如何自动转换传入的参数?.mp3

[2.6M] 10数据绑定-如何自动转换传入的参数?.pdf

[ 10M] 11ModelAndView:如何将处理结果返回给前端?.mp3

[1.9M] 11ModelAndView:如何将处理结果返回给前端?.pdf

[6.7K] 12再回首:如何实现SpringMVC?.md

[2.7M] 12再回首:如何实现SpringMVC?.mp3

[1.3M] 12再回首:如何实现SpringMVC?.pdf

[ 21K] 13JDBC访问框架:如何抽取JDBC模板并隔离数据库?.md

[ 12M] 13JDBC访问框架:如何抽取JDBC模板并隔离数据库?.mp3

[1.6M] 13JDBC访问框架:如何抽取JDBC模板并隔离数据库?.pdf

[ 15K] 14增强模板:如何抽取专门的部件完成专门的任务?.md

[7.1M] 14增强模板:如何抽取专门的部件完成专门的任务?.mp3

[2.5M] 14增强模板:如何抽取专门的部件完成专门的任务?.pdf

[ 19K] 15mBatis:如何将SQL语句配置化?.md

[8.5M] 15mBatis:如何将SQL语句配置化?.mp3

[1.9M] 15mBatis:如何将SQL语句配置化?.pdf

[5.8K] 16再回首:JdbcTemplate章节小结.md

[2.2M] 16再回首:JdbcTemplate章节小结.mp3

[583K] 16再回首:JdbcTemplate章节小结.pdf

[ 12M] 17动态代理:如何在运行时插入逻辑?.mp3

[1.7M] 17动态代理:如何在运行时插入逻辑?.pdf

[ 19K] 18拦截器:如何在方法前后进行拦截?.md

[9.8M] 18拦截器:如何在方法前后进行拦截?.mp3

[1.3M] 18拦截器:如何在方法前后进行拦截?.pdf

[ 16K] 19Pointcut:如何批量匹配代理方法?.md

[8.0M] 19Pointcut:如何批量匹配代理方法?.mp3

[1.3M] 19Pointcut:如何批量匹配代理方法?.pdf

[ 13K] 20AutoProxyCreator:如何自动添加动态代理?.md

[7.9M] 20AutoProxyCreator:如何自动添加动态代理?.mp3

[1.9M] 20AutoProxyCreator:如何自动添加动态代理?.pdf

[7.7K] 21再回首:如何实现SpringAOP.md

[2.4M] 21再回首:如何实现SpringAOP.mp3

[1.8M] 21再回首:如何实现SpringAOP.pdf

[9.9M] 加餐GPT编程(上):如何用ChatGPT辅助我们编程?.mp3

[3.9M] 加餐GPT编程(上):如何用ChatGPT辅助我们编程?.pdf

[ 28K] 加餐GPT编程(下):如何利用OpenAI的API解决语言处理类任务.md

[6.9M] 加餐GPT编程(下):如何利用OpenAI的API解决语言处理类任务.mp3

[1.7M] 加餐GPT编程(下):如何利用OpenAI的API解决语言处理类任务.pdf

[ 13M] 开篇词“眼脑手”结合,搞定Spring框架底层原理.mp3

[4.8M] 开篇词“眼脑手”结合,搞定Spring框架底层原理.pdf

[420K] 期末测试来赴一场满分之约吧!.pdf

[7.8M] 结束语老兵回首,薪火相传.mp3

[1.1M] 结束语老兵回首,薪火相传.pdf

评论0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址