Mybatis核心组件介绍

590 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第28天,点击查看活动详情


  • 💂 个人网站: IT知识小屋
  • 🤟 版权: 本文由【IT学习日记】原创、在CSDN首发、需要转载请联系博主
  • 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦

前言

  上一篇文章简单介绍了Mybatis的组成架构,现在就对其中各个组件的作用进一步介绍,让大家对Mybatis有更深入的了解。

核心组件

  1、SqlSession: 表示与数据库交互的会话,完成对数据库的CURD功能。

  2、Executor: MyBatis执行器,调度核心,负责Mybatis的SQL语句生成和查询缓存的维护。

  3、StatementHandler: 封装了JDBC statement操作,负责对JDBC statement操作,如设置参数,将结果映射成集合。

  4、ParameterHandler: 负责将用户传递的参数转换成JDBC statement所需的参数。

  5、TypeHandler: 负责将Java类型和JDBC类型之间的映射和转换。

  6、MappedStatement: MappedStatement对象对应Mapper.xml配置文件中的一个select/update/insert/delete节点,描述的就是一条SQL语句。

  7、SqlSource: 负责根据用户传递的parametreObject动态生成SQL,将信息封装到BoundSQL对象并返回。

  8、BoundSql: 标识动态生成的SQL语句以及相应的参数信息。

  9、Configuration: Mybatis中所有的配置信息都存储在此处。

Mybatis组件间的交流

image.png

  具体步骤描述

  1、读取配置文件: 其中包括数据库连接的相关信息

  2、通过读取的信息,创建SqlSessionFactory,它的生命周期是程序级的,程序运行时创建,项目结束时消亡。

  3、使用SqlSessionFactory创建SqlSession,用于执行SQL语句,它时过程级的,方法执行建立,方法完成则关闭。

  4、调用Mybatis的statementHandler提供的API执行相应的SQL语句。

  5、将执行完的SQL语句的存放在Map中

  6、执行SQL语句,将结果返回

写在最后

  本篇文章就Mybatis架构组件中如何进行相互合作进行了一个简单的介绍,后续文章会深入介绍其中的细节。经验就是一个积累的过程,没有谁能够一步登天,所以脚踏实地才是成功的秘诀。

  如果文章对你有帮助,欢迎给我点赞、关注。如有疑问,欢迎添加博主进行交流。