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