什么是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 源码来提升自己的技术水平,我相信这份总结对你来说肯定会很有帮助!
目录展示
由于篇幅原因为了不影响阅读,我已经整理成了PDF文档免费分享给大家,有需要的朋友文末可获取免费领取方式!
第1章:MyBatis入门
- 什么是MyBatis
- 为什么要使用MyBatis
- 如何使用MyBatis
- 本章小结
第2章:配置文件解析过程
- 配置文件解析过程分析
- 本章小结
第3章:映射文件解析过程
- 映射文件解析解析入口
- 解析映射文件
- Mapper接口绑定过程分析
- 处理未完成解析的节点
- 本章小结
第4章:SQL执行流程
- SQL执行入口
- 查询语句的执行过程
- 更新语句的执行过程
- SQL执行过程总结
- 本章小结
第5章:内置数据源
- 内置数据源初始化过程
- UnpooledDataSource
- PooledDataSource
- 本章小结
第6章:缓存机制
- 缓存类介绍
- CacheKey
- 一级缓存
- 二级缓存
- 本章小结
第7章:插件机制
- 插件机制原理
- 实现一个分页插件
- 本章小结
由于篇幅原因为了不影响阅读,我已经整理成了PDF文档免费分享给大家,有需要的朋友可以转发+关注后,在我的主页私信【笔记】即可获取免费领取方式!