跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Javajava

Spring Boot、MyBatis 与 MyBatis-Plus 依赖版本对应关系总结

总结了 Spring Boot、MyBatis 和 MyBatis-Plus 的依赖版本对应关系。指出版本不兼容可能导致 sqlSessionFactory 等配置错误。提供了不同 Spring Boot 版本对应的 MyBatis 及 MyBatis-Plus 推荐版本表,并说明了选择注意事项和常见问题的解决方案。建议 Spring Boot 3.x 使用 MyBatis 3.5.x 系列,确保三者版本匹配以避免兼容性问题。

星落发布于 2026/3/28更新于 2026/10/22112 浏览

Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系总结

在使用 Spring Boot、MyBatis 和 MyBatis-Plus 时,确保它们的依赖版本兼容是项目正常运行的关键。版本不兼容可能会导致诸如 sqlSessionFactory、sqlSessionTemplate 未正确配置等错误。因此,合理选择各个依赖的版本尤为重要。以下是 Spring Boot 各个版本与 MyBatis 和 MyBatis-Plus 的版本对应关系总结。

1. Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系表

Spring Boot 版本MyBatis 版本MyBatis-Plus 版本MyBatis-Plus Starter 版本
2.7.x2.2.x3.4.x3.4.x
3.0.x3.5.x3.5.x3.5.x
3.1.x3.5.x3.5.x3.5.x
3.2.x3.5.x3.5.x3.5.x

2. 依赖选择说明

  • MyBatis 版本:
    • Spring Boot 2.x 版本推荐使用 MyBatis 2.x 系列。
    • 从 Spring Boot 3.x 开始,推荐使用 MyBatis 3.5.x 系列。它是 MyBatis 当前最稳定的版本,支持最新的 Java 17 特性以及 Spring Boot 3.x API。
  • MyBatis-Plus 版本:
    • MyBatis-Plus 3.4.x 适用于 Spring Boot 2.x 系列。
    • MyBatis-Plus 3.5.x 是与 Spring Boot 3.x 系列兼容的最佳选择。此版本优化了对 Java 17 和 Spring Boot 3.x 的支持,同时提高了性能和扩展能力。
  • MyBatis-Plus Starter 版本:
    • mybatis-plus-boot-starter 是 MyBatis-Plus 提供的整合 Starter,它包括了 MyBatis-Plus 所需的核心依赖和配置,可以简化项目配置过程。与 Spring Boot 2.x 使用 3.4.x 版本,与 Spring Boot 3.x 则使用 3.5.x 版本。

3. 版本选择注意事项

  • 兼容性问题:如果在项目中遇到 sqlSessionFactory 或 sqlSessionTemplate 配置错误,最常见的问题是 MyBatis 或 MyBatis-Plus 的版本与 Spring Boot 版本不兼容。务必确保三者的版本处于同一兼容范围内。
  • Spring Boot 3.x 的变化:Spring Boot 3.x 与之前的版本有较大改动,特别是在模块化系统、Java 17 支持等方面。使用 MyBatis 和 MyBatis-Plus 的时候,一定要选择 3.5.x 版本,以便与 Spring Boot 3.x 更好地配合。

4. 依赖示例(Spring Boot 3.1.x + MyBatis 3.5.x + MyBatis-Plus 3.5.x)

<dependencies>
    <!-- Spring Boot Web Starter -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- PostgreSQL 驱动 -->
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>42.6.2</version>
    </dependency>
    <!-- MyBatis Plus Starter -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.5.3.1</version>
    </dependency>
    <!-- Lombok -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <scope>provided</scope>
    </dependency>
</dependencies>

5. 常见问题及解决方案

  • 错误提示:Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required:这种报错通常是由于 MyBatis-Plus 和 Spring Boot 的版本不兼容造成的。解决方案是检查并升级 MyBatis-Plus 到与 Spring Boot 版本匹配的版本。
  • 版本冲突:如果项目中有其他依赖版本冲突,确保所有依赖库使用的是兼容的版本,特别是在使用 mybatis-plus-boot-starter 时,MyBatis 和 MyBatis-Plus 的版本必须匹配。

6. 总结

在整合 Spring Boot、MyBatis 和 MyBatis-Plus 时:

  1. 确保所使用的 Spring Boot、MyBatis、MyBatis-Plus 和其 Starter 的版本是相互兼容的。
  2. 对于 Spring Boot 3.x,建议选择 MyBatis 3.5.x 和 MyBatis-Plus 3.5.x,并确保所有依赖库版本一致。
  3. 如果遇到错误,首先检查版本是否匹配,再排查具体配置问题。

通过合理选择依赖版本和 Starter,可以有效避免常见的配置错误和兼容性问题。

目录

  1. Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系总结
  2. 1. Spring Boot、MyBatis、MyBatis-Plus 依赖版本对应关系表
  3. 2. 依赖选择说明
  4. 3. 版本选择注意事项
  5. 4. 依赖示例(Spring Boot 3.1.x + MyBatis 3.5.x + MyBatis-Plus 3.5.x)
  6. 5. 常见问题及解决方案
  7. 6. 总结

更多推荐文章

查看全部
  • Java 环境配置与首个程序运行实战指南
  • Nginx 安全加固与 HTTPS 部署实战
  • Python 日志记录最佳实践与高级配置指南
  • 西门子 Industrial Copilot 中国首秀:工业 AI 助力制造业效率提升 30%
  • 前端可视化打印设计器 Vue Print Designer 介绍
  • Java 实现双向链表:LinkedList 模拟与源码解析
  • 2026 年主流 AI 大模型实测排名与选型指南
  • AI 入门指南:核心术语解析与常见误区澄清
  • Windows 下使用 VSCode 结合 WSL 进行远程开发配置
  • Python 入门实战:Windows 环境下 Python 下载、安装及环境配置详解
  • OpenClaw 跨平台安装指南:Windows、macOS 与 Linux 全方案
  • openKylin 通过 SSH 与 cpolar 实现远程连接
  • STM32 上运行 AI 大模型的四种方案及案例
  • SpringBoot 学生管理系统:核心配置与 Controller 实现
  • 数据结构:归并排序算法详解与实现
  • Git 安装与配置指南
  • 前端状态管理方案对比与选型指南
  • Ubuntu 部署 OpenClaw 智能体框架实战指南
  • EgoPoseFormer v2:AR/VR 场景下的第一视角人体动捕研究
  • Java 面试题及答案汇总

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online