硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点

前言

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

在国内市场来说,Mybatis的使用率比Hibernate更高,也更加流行。个人认为其流行的主要原因在于:国内绝大部分项目都是面向表结构编程的,Mybatis使用起来更加方便。

Alibaba绝对是国内互联网行业的天花板,很多优秀的开源项目都是阿里大佬分享出来的,因此今天就跟大家分享一份连Alibaba内部都在消化的Mybatis学习笔记,内容不算多,但把重点讲的明明白白,下面一起看一下吧!

关于这份笔记,我只能在文章中展示部分的章节内容和核心截图,如果你需要完整的pdf版本,可以点击Mybatis免费领取哦。

Mybatis入门

1、什么是Mybatis?

MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。

2、为什么要用Mybatis?

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第1张图片

3、Mybatis快速入门

  • 导入开发包
  • 准备测试工作
  • 创建mybatis配置文件
  • 编写工具类测试是否获取到连接
  • 创建实体与映射关系文件
  • 编写DAO

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第2张图片

4、Mybatis工作流程

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第3张图片

5、完成CRUD操作

  • 增加学生
  • 2根据ID查询数据
  • 查询所有数据
  • 根据id删除
  • 修改
  • 小细节
  • Mybatis分页

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第4张图片

6、动态SQL

  • 动态查询
  • 动态更新
  • 动态删除
  • 动态插入

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第5张图片

Mybatis配置信息

1、映射文件

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第6张图片

2、配置文件

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第7张图片

关联映射

Mybatis【多表连接】

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第8张图片

缓存+Mapper代理+逆向工程

1、Mybatis缓存

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第9张图片

2、mybatis和ehcache缓存框架整合

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第10张图片

3、Mapper代理方式

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第11张图片

4、Mybatis解决JDBC编程的问题

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第12张图片

5、Mybatis逆向工程

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第13张图片

Mybatis整合Spring

1、Mybatis与Spring整合

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第14张图片

Mybatis常见面试题

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第15张图片

Mybatis源码——入门

  • 为什么要使用MyBatis
  • 如何使用MyBatis

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第16张图片

Mybatis源码——配置文件解析过程

配置文件解析过程分析

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第17张图片

Mybatis源码——映射文件解析过程

1、映射文件解析解析入口

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第18张图片

2、解析映射文件

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第19张图片

3、Mapper接口绑定过程分析

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第20张图片

4、处理未完成解析的节点

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第21张图片

Mybatis源码——SQL执行流程

1、SQL执行入口

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第22张图片

2、查询语句的执行过程

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第23张图片

3、更新语句的执行过程

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第24张图片

4、SQL执行过程总结

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第25张图片

Mybatis源码——内置数据源

1、内置数据源初始化过程

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第26张图片

2、UnpooledDataSource

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第27张图片

3、PooledDataSource

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第28张图片

Mybatis源码——缓存机制

1、缓存类介绍

2、CacheKey

3、一级缓存

4、二级缓存

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第29张图片

Mybatis源码——插件机制

  • 插件机制原理
  • 实现一个分页插件

硬核!阿里内部消化的Mybatis学习笔记,简短却精悍,全是重点_第30张图片

总结

我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。

——对文章进行转发+评论,关注我,然后再点击获取口令「Mybatis」100%免费。

 

你可能感兴趣的:(java,框架,架构,mybatis,java,spring,编程语言,mysql)