Mybatis之整体描述

Mybatis在我看来最大的用处就是封装了jdbc,设置参数操作和获取解析结果集。同时控制了数据库链接等操作,大部分采用了反射来映射javabean对象来进行数据库操作。

1.接下来先整体介绍下主要的类:

  • Configuration        MyBatis所有的配置信息都维持在Configuration对象之中。几乎所有操作都跟它打交道
  • SqlSession            作为MyBatis工作的主要顶层API,表示和数据库交互的会话,完成必要数据库增删改查功能
  • Executor               MyBatis执行器,是MyBatis 调度的核心,负责SQL语句的生成和查询缓存的维护
  • StatementHandler 封装了JDBC Statement操作,负责对JDBC statement 的操作,如设置参数、将Statement结果集转换成List集合。
  • ParameterHandler  负责对用户传递的参数转换成JDBC Statement 所需要的参数,
  • ResultSetHandler   负责将JDBC返回的ResultSet结果集对象转换成List类型的集合;
  • TypeHandler          负责java数据类型和jdbc数据类型之间的映射和转换
  • MappedStatement  MappedStatement维护了一条<select|update|delete|insert>节点的封装,
  • SqlSource              负责根据用户传递的parameterObject,动态地生成SQL语句,将信息封装到BoundSql对象中,并返回
  • BoundSql              表示动态生成的SQL语句以及相应的参数信息,sql及参数集合等都在这个对象里面

2.接收这些类之间的关系:

(此图引用:https://blog.csdn.net/luanlouis/article/details/40422941)

3.Mybatis框架整体设计:

(此图引用:https://blog.csdn.net/luanlouis/article/details/40422941)

3.

原文地址:https://www.cnblogs.com/haoerlv/p/9928758.html