Mybatis源码解析
针对Mybatis框架的源码做解析,原生的mybatis框架的解析基于org.mybatis:mybatis:3.4.5的jar包。
翻身已碰头
人法地、地法天、天法道、道法自然
展开
-
Mybatis源码解析之分页插件pagehelper分析
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式Mybatis源码解析之D...原创 2019-03-28 16:18:19 · 1972 阅读 · 0 评论 -
Mybatis源码解析之SpringBoot集成mybatis-spring-boot-starter分析
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式Mybatis源码解析之D...原创 2019-03-28 11:33:00 · 14121 阅读 · 1 评论 -
Mybatis源码解析之懒加载(三):序列化
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式Mybatis源码解析之D...原创 2019-03-26 16:42:09 · 1443 阅读 · 0 评论 -
Mybatis源码解析之懒加载(二):ProxyFactory
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式Mybatis源码解析之D...原创 2019-03-26 11:18:18 · 1446 阅读 · 1 评论 -
Mybatis源码解析之懒加载(一):配置和ResultLoaderMap
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式Mybatis源码解析之D...原创 2019-03-26 10:29:32 · 862 阅读 · 0 评论 -
Mybatis源码解析之Spring集成mybatis-spring分析
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制前面的几篇相关博客都针对原生的mybatis进行解析,从本文开始将针对myba...原创 2019-03-21 13:48:11 · 1018 阅读 · 1 评论 -
Mybatis源码解析之DefaultResultSetHandler的handleResultSets方法解析
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制Mybatis源码解析之mapper接口的代理模式ResultSetHand...原创 2019-03-25 09:52:12 · 6582 阅读 · 0 评论 -
Mybatis源码解析之mapper接口的代理模式
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存Mybatis源码解析之插件机制一、简介在mybatis中执行sql时有两种方式,一种是基于statemen...原创 2019-03-20 17:13:29 · 1670 阅读 · 0 评论 -
Mybatis源码解析之插件机制
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存Mybatis源码解析之缓存机制(二):二级缓存为了保证程序的扩展性,提供使用者在框架基础上增强自定义的逻辑处理,mybatis提供了一种基于拦截器的插件机制。...原创 2019-03-19 15:09:39 · 638 阅读 · 1 评论 -
Mybatis源码解析之缓存机制(二):二级缓存
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理Mybatis源码解析之缓存机制(一):一级缓存为了节约每次连接数据库查询数据库的资源消耗,并提高查询效率,Mybatis提供了双重缓存机制,包括HashMap结构的一级缓存和Cache结构的二级缓存。本文主...原创 2019-03-16 16:19:03 · 513 阅读 · 0 评论 -
Mybatis源码解析之缓存机制(一):一级缓存
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池Mybatis源码解析之事务管理一、CacheKeyCacheKey是每次查询操作的特征值抽象而成的类,用于区别查询是否相同,从而从cache中找到对应的结果。当下列元素相同时,我们认为是相同的查询。(1)statementId(2)要...原创 2019-03-16 16:15:49 · 682 阅读 · 0 评论 -
Mybatis源码解析之事务管理
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析Mybatis源码解析之数据库连接和连接池一、事务简介1. 事务的特性(ACID)(1)原子性(Atomicity)一个事务内的所有操作,要么全部完成,要么全部没做,不可能存在中间状态。如果一个事务在执行过程中出现异常,会将已经执行完成的操作回滚,使得所有操作保持在全部没做的状态...原创 2019-03-14 11:08:21 · 862 阅读 · 0 评论 -
Mybatis源码解析之数据库连接和连接池
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析Mybatis源码解析之执行流程解析一、数据库连接的获取Mybatis作为ORM框架,在上一篇博客中可以了解到在sql执行流程中会在BaseExecutor#getConnection(Log)中去获取数据库连接。1. BaseExecutor#getConnection(Log)protected Connectio...原创 2019-03-13 16:36:45 · 1206 阅读 · 0 评论 -
Mybatis源码解析之执行流程解析
Mybatis源码解析之核心类分析Mybatis源码解析之初始化分析本篇文章将在前两篇文章的基础上解析Mybatis执行sql的流程。一、 映射集mappers解析对于在原生mybatis中的sql执行,需要在配置文件中通过标签引入mapper.xml文件。前文已经提到,对于xml配置文件,mybatis在XMLConfigBuilder#parseConfiguration(Xnode)...原创 2019-03-12 16:32:23 · 1243 阅读 · 0 评论 -
Mybatis源码解析之初始化分析
Mybatis源码解析之核心类分析Mybatis的初始化过程就是mybatis配置文件的解析过程并将解析结果保存到Configuration类。一、 Mybatis配置文件configuation是mybatis配置文件的根节点。configuration 配置 -properties 属性 -settings 设置 -typeAliases 类型别名 -typeHandlers ...原创 2019-03-11 11:53:57 · 838 阅读 · 0 评论 -
Mybatis源码解析之核心类分析
以下Mybatis解析基于org.mybatis:mybatis:3.4.5一、整体设计图片来源二、核心类解读1. SqlSession和SqlSessionFactorySqlSession是Mybatis框架对外暴露的顶层API接口,通过这个接口可以实现增删改查、事务管理等数据库操作,框架中提供了DefaultSqlSession和SqlSessionManager两个实现类。在...原创 2019-03-08 14:34:34 · 1726 阅读 · 2 评论