Mybatis源码
最近开始学习 mybatis 源码,本地搭建了阅读仓库,想省劲的直接下载就可以
仓库地址
先了解一下mybatis 的大致加载流程:
- 加载配置文件
- 解析xml,并创建
对象,对象里面包含了Configuration
标签里面(即mybatis)的所有配置<configuration></configuration>
- 使用
创建configuration
对象(实际是SqlSessionFactory
对象,它是DefaultSqlSessionFactory
对Mybatis
接口的默认实现,SqlSessionFactory
重载了多个获取SqlSessionFactory
的工厂方法)SqlSession
- 通过
获取自己写的sqlSession
实例,并调用自己编写的mapper
接口中的curd方法mapper
再了解一下Mybatis体系中重要的类:
-
SqlSession
可以理解为对数据库的一次或多次操作,类似于 JDBC中SqlSession
对象的Connection
对象,它在 Mybatis的体系中 是一个非常重要的类,包含了所有执行语句,提交或回滚事务,还有获取映射器实例的方法SqlSession
-
SqlSessionFactory
是SqlSessionFactory
的对象工厂,它是由SqlSession
解析xml配置文件而创建出来的SqlSessionFactoryBuilder