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 释放资源。
相关推荐
@yanyu66616 分钟前
springboot实现查询学生
java·spring boot·后端
ascarl201021 分钟前
准确--k8s cgroup问题排查
java·开发语言
magic 24525 分钟前
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
java
爱敲代码的憨仔32 分钟前
分布式协同自动化办公系统-工作流引擎-流程设计
java·flowable·oa
纪元A梦1 小时前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法
卿着飞翔1 小时前
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
java·rabbitmq·java-rabbitmq
陈阿土i1 小时前
SpringAI 1.0.0 正式版——利用Redis存储会话(ChatMemory)
java·redis·ai·springai
安全系统学习1 小时前
【网络安全】Qt免杀样本分析
java·网络·安全·web安全·系统安全
bing_1582 小时前
跨多个微服务使用 Redis 共享数据时,如何管理数据一致性?
redis·微服务·mybatis
SoFlu软件机器人2 小时前
智能生成完整 Java 后端架构,告别手动编写 ControllerServiceDao
java·开发语言·架构