项目概述

小傅哥学过的源码有很多,包括;Spring、Dubbo、MQ、任务调度框架等,但最让我受益的是 MyBatis 源码。因为其他的大部分源码框架都是解决技术问题,但日常的开发中,做技术组件造轮子的时候并不多,大部分是做业务相关的组件或者解决业务场景问题。

而 MyBatis 源码就是一个"双边生意",处理 dao 和 mysql 的关联映射,这中间抽象出了;解析、会话、数据源、池化、工厂、代理、执行器等各类高内聚和低耦合的设计。

如果说 Spring 是卧龙,那 MyBatis 就一定可以称之为凤雏!

我的感受是;Spring 复杂精妙,设计的高。MyBatis 大开大和,设计的硬。两个都学习下来,那你的代码写出来可谓是黄四郎,黄老爷的代码了!

源码设计图展示

这一套图的创作,来自于小傅哥在公司层面分享的技术公开课,每周固定时间分享。每次都从听众的反馈中,细腻的调整讲课视频的内容和涉及的图稿。让大家更有渐进式的感觉来学习源码,从0到1,也就可以很好的接受框架源码中的设计技巧,来辅助日常的业务开发。

代理和工厂

1. 代理和工厂

深入解析MyBatis中代理模式和工厂模式的设计思想,理解映射器的创建和管理机制。

会话数据源

2. 会话数据源

学习SqlSession的生命周期管理和数据源的配置与连接池的实现原理。

动态上下文

3. 动态上下文

掌握MyBatis动态SQL的解析机制和上下文环境的构建过程。

一二级缓存

4. 一二级缓存

深度剖析MyBatis缓存机制的设计原理和实现细节,提升查询性能。

单看这些图小伙伴们就会知道小傅哥需要花费好大的经历!但能帮助大家更加有效的学习,我也会非常有成就感!

全程有视频

视频讲解

每一张图的背后都有一次源码讲解的视频课,这些视频与之前的录制的MyBatis视频不同,这次主要以源码的设计思想为核心进行讲解,让大家彻底感受到框架源码的设计魅力和高级编码的技巧手段。

有了这样的积累,你以后也能做出非常漂亮的工程结构和代码实现。

这种一点点🤏🏻带着你学习的方式,用架构师多年积累的经验给你讲解,要远比自己看吸收的更多。否则一头扎进去源码,根本出不来。

课程目录

完整20章课程内容

  1. 第1章:开篇介绍,我要带你撸 Mybatis 啦!
  2. 第2章:创建简单的映射器代理工厂
  3. 第3章:实现映射器的注册和使用
  4. 第4章:Mapper XML的解析和注册使用
  5. 第5章:数据源的解析、创建和使用
  6. 第6章:数据源池化技术实现
  7. 第7章:SQL执行器的定义和实现
  8. 第8章:把反射用到出神入化
  9. 第9章:细化XML语句构建器,完善静态SQL解析
  10. 第10章:使用策略模式,调用参数处理器
  11. 第11章:流程解耦,封装结果集处理器
  12. 第12章:完善ORM框架,增删改查操作
  13. 第13章:通过注解配置执行SQL语句
  14. 第14章:解析和使用ResultMap映射参数配置
  15. 第15章:返回Insert操作自增索引值
  16. 第16章:解析含标签的动态SQL语句
  17. 第17章:Plugin插件功能实现
  18. 第18章:一级缓存
  19. 第19章:二级缓存
  20. 第20章:【作业】整合Spring

学完写简历

简历效果

实习,校招,简历有一个业务项目 + 组件/一个源码学习项目,可以说竞争力是非常强的,小傅哥带的不少伙伴都是这样配合,斩获了非常多的大厂Offer!最后都纠结选哪家了!

加入小傅哥技术社群

加入小傅哥技术社群,学习全部实战项目。包括手写 MyBatis 在内的多个企业级项目,全程手把手教学,提供完整的学习路径和技术支持,助你快速提升技术能力!

立即加入学习