MyBatis 执行流程

  1. 加载配置文件:MvBatis 的执行流程从加载配置文件开始。通常,MyBatis 的配置文件是一个 XML 文件,其中包含了数据源配置、SQL 映射配置、连接池配置等信息。
  2. 构建 SqlSessionFactory:在配置文件加载后,MyBatis 使用配置信息来构建 SqlSessionFactory,这是MyBatis 的核心工厂类。SqlSessionFactory 是线程安全的,它用于创建 SqlSession 对象。
  3. 创建 SqlSession:应用程序通过 SqlSessionFactory 创建 SqlSession 对象。SqlSession 代表一次数据库会话,它提供了执行 SQL 操作的方法。通常情况下,每个线程都应该有自己的 SqlSession 对象。
  4. 执行 SQL 查询:在 SqlSession 中,开发人员可以执行 SQL 查询,这可以通过两种方式来实现:
  • 使用注解加 SQL:MyBatis 提供了注解加执行 SQL的实现方式,MyBatis 会为 Mapper 接口生成实现类的代理对象,实际执行 SQL 查询。
  • 使用 XML 映射文件:开发人员可以在 XML 映射文件中定义 SQL 查询语句和映射关系。然后,通过SqlSession 执行这些 SQL 查询,将结果映射到 Java 对象上。
  1. SQL解析和执行:MyBatis 会解析 SQL查询,执行查询操作,并获取查询结果。
  2. 结果映射:MyBatis 使用配置的结果映射规则,将查询结果映射到 Java 对象上。这包括将数据库列映射到Java 对象的属性上,并处理关联关系等。
  3. 返回结果: 查询结果被返回给应用程序,开发人员可以对结果进行进一步处理、展示或持久化。
  4. 关闭 SqlSession: 完成数据库操作后,关闭 SqlSession 释放资源。
相关推荐
Mr Aokey2 小时前
手写Java线程池与定时器:彻底掌握多线程任务调度
java·开发语言
西瓜本瓜@5 小时前
在Android中如何使用Protobuf上传协议
android·java·开发语言·git·学习·android-studio
言之。5 小时前
别学了,打会王者吧
java·python·mysql·容器·spark·php·html5
机智的人猿泰山5 小时前
java kafka
java·开发语言·kafka
Algorithm15766 小时前
谈谈接口和抽象类有什么区别?
java·开发语言
细心的莽夫6 小时前
SpringCloud 微服务复习笔记
java·spring boot·笔记·后端·spring·spring cloud·微服务
264玫瑰资源库8 小时前
问道数码兽 怀旧剧情回合手游源码搭建教程(反查重优化版)
java·开发语言·前端·游戏
pwzs8 小时前
Java 中 String 转 Integer 的方法与底层原理详解
java·后端·基础
东阳马生架构8 小时前
Nacos简介—2.Nacos的原理简介
java
普if加的帕8 小时前
java Springboot使用扣子Coze实现实时音频对话智能客服
java·开发语言·人工智能·spring boot·实时音视频·智能客服