MyBatis 是 java 生态中非常著名的一款 ORM 框架,目前在一线互联网大厂中应用广泛,mybatis已经成为了一个必会框架。
如果你想要进入一线大厂,能够熟练使用 MyBatis 开发已经是一项非常基本的技能,同时大厂也更希望自己的开发人员深入了解 MyBatis 框架的原理和核心实现。
从这个角度看,理解 MyBatis 原理,阅读 MyBatis核心源码,这样更有利于提高职场竞争力。
在深入了解Mybatis的源码之前,我们先了解一下Mybatis的整体架构和工作原理,这样有助于我们在阅读源码过程中了解思路和流程。
Mybatis架构设计我们把Mybatis的功能架构分为三层:
- API接口层
- 数据处理层
- 基础支撑层
接口层:主要就是和数据库交互,提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库,接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。
以使用Mapper接口为例,将配置文件中的每一个 节点抽象为一个 Mapper 接口,这个接口中声明的方法和跟Mapper.xml中的 节点项对应。
id值对应方法名称,parameterType 值对应方法的入参类型,而resultMap 值则对应返回值类型。