MyBatis的工作原理

作为自己的记录,等学完一遍后再回头看,一定会理解的,加油!

( 1 )读取 MyBatis 配置文件 mybatis-config .x ml mybatis-config.xml 作为 MyBatis 的全局配 置文件,配置了 MyBatis 的运行环境等信息,其中主要内容是获取数据库连接。
(2 )加载映射文件 Mapper.xml Mapper .x ml 文件即 SOL 映射文件,该文件中配置了操作 数据库的 SOL 语句,需要在 mybatis-config .xml 中加载才能执行 mybatis-config .xml 可以加 载多个配置文件,每个配置文件对应数据库中的一张表
(3 )构建会话 通过 MyBatis 的环境等配置信息构建会话工厂 SqlSessionFactory
(4 )创 SqlSession 对象 由会话工厂创建 SqlSession 对象,该对象中包含了执行 SOL 的所有方法
(5) MyBatis 底层定义了一个 Executor 接口来操作数据库,它会根据 SqlSession 传递的参 数动态地生成需要执行的 SOL 语句,同时负责查询缓存的维护。
(6 )在 Executor 接口的执行方法中,包含一个 MappedStatement 类型的参数, 该 参数是 对映射信息的封装 用于存储要映射的 SOL 语句的 id 、参数等 Mapper.xml 文件中一个 SOL 对应一个 MappedStatement 对象 SOL id 即是 MappedStatement id
( 7 )输入参数映射 在执行方法时, MappedStatement 对象会对用户执行 SOL 语句的输入 参数进行定义(可以定义为 Map 、Li st 类型、基本类型和 POJO 类型 Executor 执行器会通过 MappedStatement 对象在执行 SOL 前,将输入的 Java 对象映射到 SOL 语句中 这里对输入参数的映射过程就类似于 JDBC 编程中对 preparedStatement 对象设置参数的过程
( 8) 输出结果映射 在数据库中执行完 SOL 语句后, MappedStatement 对象会对 SOL 行输出的结果进行定义(可以定义为 Map 和Li st 类型、基本类型、 POJO 类型 Executor 执行 器会通过 MappedStatement 对象在执行 SOL 语句后,将输出结果映射至 Java 对象中 这种将 输出结果映射到 Java 对象的过程就类似于 JDBC 编程中对结果的解析处理过程
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值