mybatis架构

分为三层:接口层、数据处理层、框架支撑层

那么展开解释每层职责

1.接口层:包含新增、删除、查询、修改接口。其调用方式大致分为两种:一种是基于statementId,一种是基于Mapper接口。另外还维护配置信息的接口

2.数据处理层,大致四个方面:参数映射、SQL解析、SQL执行、以及结果处理和映射

  • 参数映射:包含参数的映射配置、映射解析、类型解析
  • SQL解析:包含SQL语句配置、解析以及动态生成
  • SQL执行:主要是执行SQL,交由执行器Executor去执行。底层还是走的jdbc的链路。
  • 结果集处理和映射:主要是结果映射配置以及结果类型转换。这里交由StatementHandler去执行,涉及ParameterHandler设置参数、TypeHandler类型转换以及ResultSetHandler结果集映射处理

3.框架支撑层:配置加载、事务管理、连接池管理、缓存机制

相关推荐
欣欣之王来了9 分钟前
Python入门:什么是Python以及为什么选择它
学习·架构·面向对象·项目·python教程
Sirens.18 分钟前
Java并发锁详解:六类锁策略与 synchronized 底层原理
java·前端·算法
代码方舟1 小时前
零信任架构实战:基于天远运营商三要素简版V即时版查询构建自动化电子投保实名核验网关
大数据·人工智能·架构·自动化
sunshine22 girl1 小时前
Java学习五 面向对象高级5 内部类1
java·学习
诚心呈意共享外卖配送系统2 小时前
众包配送调度系统选什么?聊聊派单、抢单、合单与结算的技术设计
架构·系统架构·创业创新
用户1305180712152 小时前
JDBC学习DAY2:从Statement到PreparedStatement
java
蛋蛋的就会顺顺的3 小时前
hot100——矩阵
java·数据结构·算法·leetcode·力扣
周杰偷奶茶3 小时前
【Java】数组的定义和使用(附管理系统实战案例)
java·开发语言
橙子圆1234 小时前
JUC之集合类不安全
java·开发语言
谢亮_vipxieliang5 小时前
Stream API 不是银弹:常见坑与性能建议
java·开发语言