Mybatis源码中最重要的几个类

Posted zqr99

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis源码中最重要的几个类相关的知识,希望对你有一定的参考价值。

Configration 将Mybatis config文件和mapper文件解析后,生成的对象,二级缓存在这个类中,此类的作用域是整个应用的生命周期

XMLConfigBuilder 对Mybatis config进行解析,并给configration对象的属性赋值

XMLMapperBuilder 对mapper文件进行解析,并给configration对象的属性赋值

SqlSessionFactoryBuilder SqlSessionFactory的工厂类

SqlSessionFactory 用来构建SqlSession的工厂,根据Configration 构建SqlSessionFactory

SqlSession 用来执行statement,执行sql查询时,会先查询transactionCache中是否有缓存,如果没有,会查询一级缓存localcache,如果没有,再调用excutor执行查询

StatementHandler 此类中包装了一个excutor的list,可以用做插件开发,StatementHandler执行transaction,每个sql查询对应一个StatementHandler对象   refer to  MyBatis 核心配置综述之StatementHandler

ParameterHandler 用于对参数的封装 refer to MyBatis 核心配置综述之 ParameterHandler

ResultsetHandler 用于对结果的封装 refer to MyBatis 核心配置综述之 ResultSetHandler

Excutor 执行器接口,用与执行sql语句

缓存 refer to MyBatis 一级缓存、二级缓存全详解(一)

 

以上是关于Mybatis源码中最重要的几个类的主要内容,如果未能解决你的问题,请参考以下文章

关于MyBatis sqlSession的一点整理

配置sqlsessiontemplate有啥用

MyBatis的几个重要概念和工作流程

sqlsession调用哪个方法获取代理对象

mybatis源码探究(-)MapperProxyFactory&MapperProxy

Mybatis和mybatis-spring一级缓存