MyBatis开篇

本文最后更新于 2025年5月29日

一、MyBatis概述

MyBatis是一个基于Java的持久层框架,最初是Apache的一个开源项目iBatis,iBatis一词来源于“internet”和“abatis”的组合,2010年6月这个项目由Apache Software Foundation迁移到了Google Code,随着开发团队转投Google Code旗下,iBatis3.x正式更名为MyBatis,代码于2013年11月迁移到Github

MyBatis框架和其衍生的增强工具库已经成为今天Java后端开发持久层的首选,常见增强工具库有:

二、MyBatis特点

  • 半自动的ORM(Object Relation Mapping)框架

  • 支持定制化 SQL、存储过程以及高级映射

  • 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集

  • 基于简单的XML或注解来使用

三、MyBatis架构解读

MyBatis是一款设计精良,架构清晰的框架,采用了工厂模式、适配器模式、装饰器模式、代理模式等多种设计模式。提供了很多扩展,例如插件机制、对第三方日志框架和第三方数据源的兼容等,整个架构分为三部分:基础层,核心处理层和接口层

3.1 基础层

基础支撑层是整个MyBatis框架的地基,为整个MyBatis框架提供了非常基础的功能,其中每个模块都提供了一个内聚的、单一的能力,MyBatis基础支撑层按照这些单一的能力可以划分为上图所示的九个基础模块。

3.2 核心处理层

核心处理层是MyBatis核心实现所在,其中涉及MyBatis的初始化以及执行一条SQL语句的全流程。

3.3 接口层

接口层是MyBatis暴露给调用的接口集合,这些接口都是使用MyBatis时最常用的一些接口,例如,SqlSession接口、SqlSessionFactory接口等。其中,最核心的是SqlSession接口,你可以通过它实现很多功能,例如,获取 Mapper 代理、执行 SQL 语句、控制事务开关等。


"如果文章对您有帮助,可以请作者喝杯咖啡吗?"

微信二维码

微信支付

支付宝二维码

支付宝


MyBatis开篇
https://blog.liuzijian.com/post/1389f67b3797e893517da186e.html
作者
Liu Zijian
发布于
2023年6月1日
更新于
2025年5月29日
许可协议