Mybatis源码解读1-整体架构及数据接口层的实现(1)

1.Mybatis的整体架构

接口层
接口层是提供给开发人员的一套API,主要是使用SQLSession接口和Mapper接口通知调用那个sql还有关联参数

二.sqlsession源码分析

SqlSessionFactory是一个顶级接口,他主要包括的是创建SqlSession以及图中显示的Configuration对象.

Configuration这个对象主要是Mybatis中的配置文件,通过加载配置文件完成一些对Mybatis中的一些设置

由图可知,这个顶级接口总共两个实现类

那我们先看看SqlSessionManager

在这个里边主要就有一个比较简单的问题,标记在图片中了

 但是在实际开发中,一般情况下Mybatis都是要配合Spring一起使用的,所以,SqlSession对象一般情况是由Spring进行管理的,所以这个类就不做深入研究了,

另一个实现类主要就是 DefaultSqlSessionFactory

这个里边主要是通过configuration进行创建对象.

这个configuration主要是哪里来的,我这边写一个简单的测试类进行debug一下,看一下他是如何过来了

 在创建sqlSessionFactory对象中,他主要是通过他的自类创建出来对象

在断点进来以后,我们看到这个方法的XMLConfigBuilder对象,XMLConfigBuilder这个对象主要是解析出来在启动之前加载的配置文件,在return中他主要的就是讲我们的配置返回成configuration对象,然后在build方法中我们看到通过这个房子创建出来了这个sqlsessionfactory对象
至此我们的sqlSessionFactory对象就创建完成了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值