什么是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章:插件机制
- 插件机制原理
- 实现一个分页插件
- 本章小结



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

被折叠的 条评论
为什么被折叠?



