原文:mybatis 源码分析(三)Executor 详解

本文将主要介绍 Executor 的整体结构和各子类的功能,并对比效率 一 Executor 主体结构 . 类结构 executor 的类结构如图所示: 其各自的功能: BaseExecutor:基础执行器,封装了子类的公共方法,包括一级缓存 延迟加载 回滚 关闭等功能 SimpleExecutor:简单执行器,每执行一条 sql,都会打开一个 Statement,执行完成后关闭 ReuseExe ...

2019-08-22 16:11 0 462 推荐指数:

查看详情

MyBatis 源码分析 - SQL执行过程(一)之 Executor

参考 知识星球 中 芋道源码 星球的源码解析,一个活跃度非常高的 Java 技术社群,感兴趣的小伙伴可以加入 芋道源码 星球,一起学习😄 该系列文档是本人在学习 Mybatis源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub ...

Tue Nov 24 23:39:00 CST 2020 0 833
MyBatis 源码分析——SqlSession接口和Executor

mybatis框架在操作数据的时候,离不开SqlSession接口实例类的作用。可以说SqlSession接口实例是开发过程中打交道最多的一个类。即是DefaultSqlSession类。如果笔者记得没有错的话,早期是没有什么getMapper方法的。增删改查各志有对应的方法进行操作。虽然现在改进 ...

Sat Feb 04 06:43:00 CST 2017 2 3320
mybatis 源码分析(五)Interceptor 详解

本篇博客将主要讲解 mybatis 插件的主要流程,其中主要包括动态代理和责任链的使用; 一、mybatis 拦截器主体结构 在编写 mybatis 插件的时候,首先要实现 Interceptor 接口,然后在 mybatis-conf.xml 中添加插件, 这里需要注意的是,添加的插件 ...

Wed Aug 28 22:27:00 CST 2019 0 640
mybatis 源码分析(八)ResultSetHandler 详解

本篇博客就是 myabtis 系列的最后一篇了,还剩 ResultSetHandler 没有分析;作为整个 mybatis 最复杂最繁琐的部分,我不打算按步骤一次详解,因为里面的主要内容就是围绕 resultMap 按层次结构依次解析的,其中运用最多的就是反射,所以我这里将围绕延迟加载重点分析 ...

Thu Sep 05 23:43:00 CST 2019 0 696
mybatis 源码分析(七)KeyGenerator 详解

一、KeyGenerator 概述 在平时开发的时候经常会有这样的需求,插入数据返回主键,或者插入数据之前需要获取主键,这样的需求在 mybatis 中也是支持的,其中主要的逻辑部分就在 KeyGenerator 中,下面是他的类图: 其中: NoKeyGenerator:默认空 ...

Mon Sep 02 23:48:00 CST 2019 1 979
mybatis源码解析9---执行器Executor解析

从前面分析我们知道了sql的具体执行是通过调用SqlSession接口的对应的方法去执行的,而SqlSession最终都是通过调用了自己的Executor对象的query和update去执行的。本文就分析下sql的执行器-----Executor Executormybatis的sql执行器 ...

Tue Mar 26 08:13:00 CST 2019 0 681
MyBatisExecutor源码解析之BatchExecutor搞不懂

为了便于源码分析,还是先来一个MyBatis的Demo吧 mybatis-mysql-config.xml user.xml 入口方法main: 这个Executor的代码离上面Demo执行代码还有一段很长封装,如果分析Executor,就要分析 ...

Mon Apr 13 23:05:00 CST 2020 1 2569
Mybatis 源码(二)-三种执行器Executor 的区别

  mybatis有三种执行器。下面研究其主要区别。 其类图如下: 1. Executor 源码 org.apache.ibatis.executor.Executor: 2. BaseExecutor 抽象类 View Code ...

Mon Sep 06 05:44:00 CST 2021 0 95
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM