Mybatis源码解析
Mybatis源码解析
寒山道杳
合抱之木,生於毫末;九層之台,起於累土;千里之行,始於足下。
展开
-
深入浅出Mybatis源码解析——结果集映射流程
前言在前一篇文章中,笔者补上了一篇文章,在那篇文章中,主要说了关于SQL语句的执行流程,当SQL执行完成后,那么肯定会返回一个结果集,对于这样的结果集是需要做一个映射的,就譬如你所返回的数据是表中的数据,但是要映射成Java中的实体类对象,便需要进行映射处理。说起来很抽象,那么就不多说了,还是直接进入主题,来看看在源码中是怎么实现的。一、包装结果列元信息对象在进入正文之前,还需要再...原创 2020-01-14 20:13:31 · 2483 阅读 · 0 评论 -
深入浅出Mybatis源码解析——SqlSession执行主流程(补)
前言由于Mybatis的源码系列文章,期间有长时间的脱节,导致笔者在写代码解析的时候中间出现了断裂,这个要和大家说声对不起,因此本篇文章是补深入浅出Mybatis源码解析——获取Mapper代理对象流程照片文章的,在这篇文章中简单的说了一下SqlSession执行主流程,也只是简单的说了说,后面的核心代码还没有涉及。说到这里,我们还是尽快进入主题,首先回顾下前面提到的那篇文章最后的代码,如...原创 2020-01-08 22:24:06 · 368 阅读 · 0 评论 -
深入浅出Mybatis源码解析——BoundSql获取流程
前言停更了一个多月,博主一直在忙于技术的学习与工作的繁忙之间,其实更多的是迷茫于技术中,但是想想还是要把Mybatis系列继续更新下去。博主也给自己在20年立了几个flag:深入学习Java、研究研究c++、第三个就是健身咯,只要是因为回首2019年,感觉自己在技术学习的道路上是在没走多少,因此想着这次必须要对自己狠一点了。先不多说了,回顾一下前一篇文章,由于时隔太久,笔者都有点记不清了。...原创 2020-01-06 19:32:57 · 6452 阅读 · 0 评论 -
深入浅出Mybatis源码解析——获取Mapper代理对象流程
前言在上一篇文章深入浅出Mybatis源码解析——SqlSource的创建流程中,说了SqlSource的创建流程这样一个完整的创建流程,在这个流程中包含了:动态SQL标签处理器、解析动态SQL、创建MappedStatement对象。这样给我们对SQLSource这样的整个流程有了一个大概的了解。而这个过程的作用其实就是把Mapper文件中的SQL语句进行相关的解析和封装,一遍后续的执行...原创 2019-11-20 23:34:44 · 854 阅读 · 0 评论 -
深入浅出Mybatis源码解析——SqlSource的创建流程
前言在前一篇文章深入浅出Mybatis源码解析——映射文件加载流程中,最后说到了创建SqlSource和创建MappedStatement对象,由于篇幅原因最后只好终止了,所以便只好在写一篇文章来说说SqlSource这样的一个创建流程是怎样的,在本系列第一篇完成后,也曾问过一两个认识的读者,有说不太看得懂,可能本人写博客不够图文并茂,所以在下一篇博文中准备来整理一张Mybatis的一个完整的...原创 2019-11-19 23:53:20 · 803 阅读 · 0 评论 -
深入浅出Mybatis源码解析——映射文件加载流程
前言在前两篇文章中,简单了说了下Mybatis全局配置文件解析加载流程和和全局配置文件的部分标签解析,但是还并没有涉及到核心的解析。所以本篇文章将开始核心解析的部分,那就是mappers标签的解析。可能有人很奇怪这为什么不在前两篇文章中拿出来说,因为mapper标签的解析在configuration标签同层标签解析中是一个比较特殊的部分,因此需要单独拿出来进行说明。好吧,说了这么多废话,还...原创 2019-11-18 23:46:19 · 363 阅读 · 0 评论 -
深入浅出Mybatis源码解析——全局配置文件解析(全局配置文件解析加载流程附篇)
前言首先要说下停更这么久的原因,因为工作上最近有点忙,加上学习债的繁重以至于没有继续更新Mybatis源码解析的文章,所以趁着忙里偷闲,来简单的更新一篇。在上一篇文章深入浅出Mybatis源码解析——全局配置文件解析加载流程中,我们讲到了全局配置文件的一个加载的过程,既然只是一个加载的流程,那就有解析的流程的啦!因此大家也猜到了,本篇正是讲全局配置文件中的一些解析,在parseConfig...原创 2019-11-16 23:18:56 · 232 阅读 · 0 评论 -
Mybatis源码解析《二》
导语在前一篇文章Mybatis源码解析《一》中,已经简单了捋了一下mybatis核心文件和mapper配置文件的一个基本的解析流程,这是理解mybatis的基本,和spring中的配置文件的加载解析是一样的道理。既然说完了文件的加载,那么接下来便是关于mybatis的核心流程了,SqlSession的创建、SQL语句的操作、session的commit和关闭。在正式开始之前先回顾下上一篇文...原创 2019-08-05 17:09:25 · 709 阅读 · 0 评论 -
Mybatis源码解析《一》
导语在当前的日常开发中,mybatis这样的一个框架的使用,是很多程序员都无法避开的。大多数人都知道mybatis 的作用是为了避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。因为在开始接触使用Java操作数据库的时候,我们都是使用JDBC的。自从有了持久化框架之后,使用持久化框架已经是“理所当然”的了,虽然我们已经脱离了使用JDBC是阶段了,但是这毕竟是基础的知识,所以本篇...原创 2019-08-02 09:59:32 · 384 阅读 · 0 评论 -
深入浅出Mybatis源码解析——全局配置文件解析加载流程
前言前面笔者其实已经写了两篇关于Mybatis源码解析的文章,可后面自觉其解析的不够全面,但是那两篇文章完全是按照debug模式,简单的走了一遍流程去解析的,对于Mybatis内部的很多类的属性以及类的作用都没有做相关介绍。后来想想还是觉得好好写几篇关于Mybatis的文章,其实这也是为了强逼自己要深度的去阅读一下源码。现在写这篇文章的同时,也是笔者自己在学习的一个过程,如果文章中有错误之...原创 2019-09-27 17:55:54 · 362 阅读 · 0 评论