-
JDBC执行流程
- 加载JDBC驱动;
- 建立并获取数据库连接;
- 创建 JDBC Statements 对象;
- 设置SQL语句的传入参数;
- 执行SQL语句并获得查询结果;
- 对查询结果进行转换处理并将处理结果返回;
- 释放相关资源(关闭Connection,关闭Statement,关闭ResultSet);
-
三层功能架构
-
API接口层
-
使用传统的MyBatis提供的API
-
使用Mapper接口
- 接口中声明的方法和<mapper> 节点中的<select|update|delete|insert> 节点项对应
- 即<select|update|delete|insert> 节点的id值为Mapper 接口中的方法名称
- parameterType 值表示Mapper 对应方法的入参类型
- resultMap 值则对应了Mapper 接口表示的返回值类型或者返回结果集的元素类型
-
数据处理层
-
通过传入参数构建动态SQL语句
- MyBatis 通过传入的参数值,使用 Ognl 来动态地构造SQL语句,使得MyBatis 有很强的灵活性和扩展性
- 参数映射指的是对于java 数据类型和jdbc数据类型之间的转换
-
SQL语句的执行以及封装查询结果集成List<E>
- 支持结果集关系一对多和多对一的转换
- 嵌套查询语句的查询
- 嵌套结果集的查询
-
基础支撑层
- 事务管理机制
- 连接池管理机制
- 缓存机制
- SQL语句的配置方式