跟着腾讯大牛学源码分析,总结出这份MyBatis的pdf文档

本文档系统地介绍了MyBatis,从为什么选择MyBatis到其配置解析、映射文件解析、SQL执行流程、数据源、缓存机制和插件机制。适合于后端开发者,特别是对MyBatis源码感兴趣或需要面试准备的人群,帮助解决实际工作中的问题,提升技术水平。

什么是MyBatis

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis。是一个基于Java的持久层框架

为什么我们要用Mybatis?

无论是Mybatis、Hibernate都是ORM的一种实现框架,都是对JDBC的一种封装!

Hibernate是一个比较老旧的框架,用过它的同学都知道,只要你会用,用起来十分舒服...啥sql代码都不用写...但是呢,它也是有的缺点:处理复杂业务时,灵活度差, 复杂的HQL难写难理解,例如多表查询的HQL语句

而JDBC很容易理解,就那么几个固定的步骤,就是开发起来太麻烦了,因为什么都要我们自己干..

而SpringDAO其实就是JDBC的一层封装,就类似于dbutils一样,没有特别出彩的地方....

我们可以认为,Mybatis就是jdbc和Hibernate之间的一个平衡点...毕竟现在业界都是用这个框架,我们也不能不学呀!

有的朋友可能会说,Hibernate也可以直接写SQL啊....

我想说:直接用SQL,mybatis它不香么?不用HQL,还用hibernate干嘛呢?

我发现在很多博客或者百度上都没有系统详细的笔记总结,零零散散,直到今天终于看到有人把MyBatis从入门到源码解析总结的如此系统!在实际工作中遇到过MyBatis 一些诡异的问题,如:关联查询时结果集为什么和预想的不一致?如果你在面试过程中遇到过“请你谈谈#和$的区别”,如果你想自己实现一套 ORM 框架而没有好的想法时,还有如果你只是想简单的通过阅读 MyBatis 源码来提升自己的技术水平,我相信这份总结对你来说肯定会很有帮助!

目录展示

第1章:MyBatis入门

  • 什么是MyBatis
  • 为什么要使用MyBatis
  • 如何使用MyBatis
  • 本章小结

第2章:配置文件解析过程

  • 配置文件解析过程分析
  • 本章小结

第3章:映射文件解析过程

  • 映射文件解析解析入口
  • 解析映射文件
  • Mapper接口绑定过程分析
  • 处理未完成解析的节点
  • 本章小结

第4章:SQL执行流程

  • SQL执行入口
  • 查询语句的执行过程
  • 更新语句的执行过程
  • SQL执行过程总结
  • 本章小结

第5章:内置数据源

  • 内置数据源初始化过程
  • UnpooledDataSource
  • PooledDataSource
  • 本章小结

第6章:缓存机制

  • 缓存类介绍
  • CacheKey
  • 一级缓存
  • 二级缓存
  • 本章小结

第7章:插件机制

  • 插件机制原理
  • 实现一个分页插件
  • 本章小结

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值