【MyBatis】01 MyBatis 的工作原理
MyBatis 的结构特性
- MyBatis 的功能架构分为三层:
- API 接口层:(使用方式:dao 接口)
- 提供给外部使用的接口 API,通过这些 API 来操纵数据库。
- 数据处理层:(配置方式:xml 映射文件)
- 负责具体的 SQL 查找、SQL 解析、SQL 执行和执行结果处理等。
- 基础支撑层:(配置方式:xml 配置文件)
- 负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理。
- API 接口层:(使用方式:dao 接口)
MyBatis 功能架构图:
工作原理原型图
工作原理解析:
MyBatis 应用程序根据 XML 配置文件创建 SqlSessionFactory (一般情况下不会用 Configuration 来创建,而是用 Resource),SqlSessionFactory 在根据配置(配置来源于两个地方,一个是配置文件,一个是 Java 代码的注释)获取一个 SqlSession。SqlSession 包含了执行 sql 所需要的所有方法,可以通过 SqlSession 实例直接运行映射的 sql 语句,完成对数据的增删该查和事务提交等,用完之后关闭 SqlSession。