对于mybatis,其中几个核心概念,对于我们学习理解mybatis原理很重要,接下来我们就先梳理一下它的几个核心概念:
名称 | 含义 |
Configuration | 管理 mysql-config.xml 全局配置关系类,在SqlSessionFactoryBuilder().build()中,会对其进行创建和初始化 |
SqlSessionFactory | SqlSession的管理工厂,这里需要注意的是,对于每个environment都要单独创建一个SqlSessionFactory |
SqlSession | SqlSession 是一个面向用户(程序员)的接口。SqlSession 中提供了很多操作数据库的方法 |
Executor | 执行器接口,其实现有基本的数据库操作执行器和缓存执行器。主要用来执行数据库操作和缓存操作 |
MappedStatement | 底层封装对象 作用:对操作数据库存储封装,包括基本配置、 sql 语句、输入输出参数 |
StatementHandler | 用来执行数据库处理的handler接口 |
ResultSetHandler | 用来处理结果集的handler接口 |
下边是我对mybatis原码包的一些理解,贴出来供大家交流和学习:
基本的内容我们已经梳理一下,后边我们将根据debug的过程,来详细了解一下mybatis的处理流程