Mybatis源码学习之—— 源码包结构

源码包结构介绍

说明
annotations存放所有基于Java代码注解形式用到的注解
binding在获取到SqlSession之后,可以通过Mapper.class的方式,这个时候会通过MapperRegistry拿到这个class的一个代理MapperProxy,然后在执行这个class对应的方法的时候会被代理执行。
builder这个包里面放的时候解析构建,其中MapperAnnotationBuilder负责mapper接口的加载,XMLConfigBuilder是整个mybatis的核心接口,负责加载Configuration,XMLMapperBuilder则负责加载.xml文件类型的mapper
cache这个包里面放了缓存相关的实现,最基础的是PerpetualCache这个类实现了Cache接口,在decorators下面的类,则是通过装饰者模式,对PerpetualCache进行的装饰
cursor这里面是游标相关的内容
datasource这里面放的是数据源相关的东西,其中包含池化的数据源跟未池化的数据源
exceptions里面放的是异常相关类
executor这里面是执行sql相关部分,核心的Executor接口,三个类型SIMPLE、REUSE、BATCH对应三个executor,还有一个CachingExecutor,这个是在允许缓存的时候,进行缓存相关的处理的,如果允许缓存的话,那么就在创建executor的时候,会将目标的executor进行包装一层caching,同时会在创建的时候对插件进行包装
io这个是io相关处理用到的包
jdbc这个是sql相关的测试辅助类
lang
logging日志相关
mapping一个核心类MappedStatement,这个映射后的声明,在mybatis加载的时候会加载所有的.xml中的方法,从而生成MappedStatement。
parsing这个里面是解析参数的。
plugin这个是插件相关的
reflection这个是反射相关的实现
scripting
session一个核心类Configuration,这个是mybatis的全局配置,以及提供给外部调用的接口,外部可以通过操作SqlSession这个接口来完成对数据库的操作。
transaction事务相关处理
type处理java的参数为jdbc参数,处理jdbc参数为java类型

Mybatis 源码包结构图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值