mybatis 四大组件

 

一、Mybatis四大组件

在这里插入图片描述

二、SqlSession四大对象

在这里插入图片描述
这里阐述一下上图的流程

Exeutor发起sql执行任务
1、先调用statementHandler中的prepare()进行SQL的编译
2、然后调用statementHandler中的parameterize()设置参数
    2.1、这里其实真正设置参数的是ParameterHandler中的setparameters()方法,该方法与typeHandler进行参数类型的转换
3、然后执行query/update方法,这里使用ResultSetHandler进行结果的组装工作
    3.1、这里ResultSetHandler又与typeHandler、ObjectFactory配合工作共同完成结果的组装工作
statementHandler

执行器Executor,执行器负责整个SQL执行过程的总体控制。
语句处理器StatementHandler,语句处理器负责和JDBC层具体交互,包括prepare语句,执行语句,以及调用ParameterHandler.parameterize()设置参数。
参数处理器ParameterHandler,参数处理器负责PreparedStatement入参的具体设置。
结果集处理器ResultSetHandler,结果处理器负责将JDBC查询结果映射到java对象。
————————————————
版权声明:本文为CSDN博主「周星猩」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hong10086/article/details/96879604


三、映射器三大组成部分

在这里插入图片描述
其实mybatis中一条SQL和它相关的配置信息由三部分组成

MappedStatement:sql的ID、缓存信息、resultType、ParameterType、resultMap等信息
Sqlsource:是MappedStatement的一个属性,是一个接口,主要提供BoundSql
BoudSql:是建立SQL和参数的地方,有三个主要属性,ParameterMappings、ParameterObject和sql,这个对象比较重要,我们通常使用插件就是对它进行拦截;

总结:

  1. Mybatis四大组件构成mybatis的整个生命周期;
  2. sqlSession四大对象,描述SQL执行的流程;
  3. 映射器组成部门,描述最底层SQL执行的细节;
posted @   不死码农  阅读(778)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示