mybatis架构

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

那么展开解释每层职责

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

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

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

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

相关推荐
某林21217 小时前
ROS2 + WebRTC + MQTT 异构系统架构
架构·系统架构·机器人·硬件架构·webrtc·ros2
zy happy17 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
AI人工智能+电脑小能手17 小时前
【大白话说Java面试题 第192题】【08_Kafka篇】第8题:死信队列是什么?延时队列是什么?
java·kafka·消息队列·死信队列·延时队列
meng半颗糖17 小时前
3.Java流程控制语句
java·开发语言·intellij-idea
大模型码小白17 小时前
企业级检索增强后端集成:Java 服务如何管理知识库版本
java·服务器·开发语言·人工智能·python·microsoft
guslegend17 小时前
领域驱动设计,微服务设计为什么要选择DDD?
微服务·云原生·架构
用户61691822999317 小时前
记录一次死锁检测
java
jvmind_dev17 小时前
1c1g 容器莫名 OOM Killed?排查 Metaspace 持续增长与脚本引擎的坑
java·后端
AI多Agent协作实战派18 小时前
AI多Agent协作系统实战(二十二):从6列到12列——任务监控报告的进化之路
java·人工智能·uni-app·bug
用户31268748772018 小时前
@Transactional 注了等于没用?Spring 事务失效的 7 种场景,你踩过几个
java