当前位置: 首页 > article >正文

Spring 集成 MyBatis 操作指南(详细实例)

📝 1. 前言

Spring 框架与 MyBatis 是 Java 开发中常见的组合,MyBatis 作为一款轻量级 ORM 框架,提供灵活的 SQL 语句管理,同时结合 Spring 的依赖注入和事务管理,能大大提高数据库访问的开发效率。本文将详细介绍 Spring 集成 MyBatis 的操作步骤,并提供完整实例。


📌 2. 项目环境

  • JDK:1.8+
  • Spring:5.3.36
  • MyBatis:3.5.14
  • Spring-MyBatis 适配器:2.0.6
  • 数据库:MySQL 8.0+
  • 连接池:Druid

⚙️ 3. 创建 Spring + MyBatis 项目

3.1 添加 Maven 依赖

pom.xml 中引入 MyBatis、Spring 及数据库相关依赖:

<dependencies>
    <!-- Spring Context -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.3.36</version>
    </dependency>

    <!-- Spring JDBC -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>5.3.36</version>
    </dependency>

    <!-- MyBatis 核心 -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.14</version>
    </dependency>

    <!-- MyBatis-Spring 适配器 -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>2.0.6</version>
    </dependency>

    <!-- MySQL 驱动 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.33</version>
    </dependency>

    <!-- Druid 数据源 -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.2.20</version>
    </dependency>

    <!-- lombok -->
     <dependency>
         <groupId>org.projectlombok</groupId>
         <artifactId>lombok</artifactId>
         <version>RELEASE</version>
         <scope>provided</scope>
    </dependency>
</dependencies>

📂 4. 项目结构

spring-mybatis-demo
├── src
│   ├── main
│   │   ├── java
│   │   │   └── com.alivinf

http://www.kler.cn/a/569893.html

相关文章:

  • BUG日志:使用热点或免费加速器时git链接github出现端口22拒绝访问的解决方法
  • 一周一个Unity小游戏2D反弹球游戏 - 球反弹的方向
  • 强化学习策略梯度算法实现文档(CartPole-v1)
  • barcodelib:一个功能强大且易于使用的 C# 条形码生成库
  • 2025全开源Java多语言跨境电商外贸商城/Tk/FB内嵌商城I商家入驻I批量下单I完美运行
  • 【QT网络问题】关于QT在调用天气等类似api接口时报错
  • 差旅费控平台作用、功能、11款主流产品优劣势对比
  • Docker 数据卷管理及优化
  • 【网络安全 | 渗透测试】GraphQL精讲二:发现API漏洞
  • CAN总线通信协议学习4——数据链路层之仲裁规则
  • 【大模型原理与技术】1.2基于学习的语言模型
  • Yocto + 树莓派摄像头驱动完整指南
  • 如何为Java面试准备项目经验
  • 【告别双日期面板!一招实现el-date-picker智能联动日期选择】
  • 初探Ollama与deepseek
  • 【GESP】C++二级真题 luogu-B4037 [GESP202409 二级] 小杨的 N 字矩阵
  • 【无人机】无人机通信模块,无人机图数传模块的介绍,数传,图传,图传数传一体电台,
  • Windows Docker玩转Nginx,从零配置到自定义欢迎页
  • 三元组排序(acwing)c++
  • 关于后端使用Boolean或boolean时前端收到的参数的区别