mybatis架构

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

那么展开解释每层职责

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

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

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

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

相关推荐
CeshirenTester22 分钟前
从数据库到结构化用例:一套可落地的测试智能体架构
数据库·架构
VillanelleS27 分钟前
AI工程化之Agent架构
人工智能·架构
麦麦鸡腿堡42 分钟前
JavaWeb_请求参数,设置响应数据,分层解耦
java·开发语言·前端
没有bug.的程序员2 小时前
Serverless 弹性扩容引发的全线熔断:Spring Boot 启动耗时从 1s 压缩至 0.3s 的物理级绞杀
java·spring boot·kubernetes·serverless·扩容·线上
bearpping2 小时前
java进阶知识点
java·开发语言
独自破碎E2 小时前
【面试真题拆解】你知道ThreadLocal是什么吗
java·jvm·面试
kkkkatoq2 小时前
JAVA中的IO操作
java·开发语言
天若有情6733 小时前
通用个性化推荐核心架构思路:从视频到电商的跨场景落地实践
人工智能·算法·架构·推流·个性化推荐·猜你喜欢
深蓝轨迹3 小时前
@Autowired与@Resource:Spring依赖注入注解核心差异剖析
java·python·spring·注解
不想看见4043 小时前
C++八股文【详细总结】
java·开发语言·c++