【SpringBoot3】Spring Boot 3.0 整合 Mybatis Plus 实战:从零构建高效数据访问层

1. 为什么选择 Spring Boot 3.0 + Mybatis Plus?

如果你正在用 Java 做 Web 开发,尤其是需要和数据库打交道,那你大概率绕不开 Spring Boot 和 MyBatis。但说实话,原生的 MyBatis 虽然灵活,写起单表的增删改查来,那个 XML 文件或者一堆注解,重复劳动是真不少。每次新加个表,实体类、Mapper接口、XML映射文件、Service层……一套流程下来,感觉时间都花在了机械的复制粘贴上。

这时候,Mybatis Plus(后面咱们就亲切地叫它 MP)就该登场了。我用了好几年,它给我的感觉就像一个“超级外挂”,在 MyBatis 的基础上,只做增强,不改动任何底层东西。你之前怎么写 MyBatis,现在还能怎么写,但它给你提供了大量“开箱即用”的利器。最香的就是那个通用 Mapper通用 Service,继承一下,基础的 CRUD(增删改查)方法全都有了,根本不用你写一句 SQL。这效率提升,可不是一点半点。

那为什么是 Spring Boot 3.0呢?Spring Boot 3.0 是一个重要的里程碑,它基于 Spring Framework 6.0,全面拥抱了 Java 17+。这意味着更好的性能、更现代的 API(比如全新的 HTTP 接口客户端),以及对 GraalVM 原生镜像的正式支持,为未来应用变得更小、启动更快铺平了道路。虽然现在可能还用不到原生编译,但站在技术栈的前沿,用新版本构建新项目,能避免以后升级的阵痛。

所以,Spring Boot 3.0 提供现代化、高效的运行时底座,Mybatis Plus 提供极致简洁、强大的数据访问能力,这两者结合,简直就是构建后端服务,特别是需要快速迭代的业务中台的“黄金搭档”。接下来,我就手把手带你,从一个空项目开始,把这套组合拳打好,搭出一个既标准又高效的数据访问层脚手架。这个脚手架你以后在新项目里直接复制过去改改配置就能用,省心省力。

2. 从零开始:项目初始化与依赖配置

万事开头难,但咱们这个头,开起来特别简单。我习惯用 IntelliJ IDEA,你也可以用你顺手的 IDE。打开 IDEA,选择 New Project,找到 Spring Initializr。这里有个小坑需要注意:Spring Boot 3.0 要求 JDK 17 或更高版本,所以请确保你的项目 SDK 选对了。

Project Metadata 页面,填好你的 Group、Artifact(比如 demo-mp)。打包方式选 Jar,Java 版本选 17 或 21。在依赖选择页面,我们只需要勾选最基础的 Spring Web 依赖就行。为什么不多选?因为 Mybatis Plus 的依赖我们手动在 pom.xml 里加,这样版本更可控。点击创建,一个干净的 Spring Boot 3.0 项目就生成了。

接下来,打开项目里的 pom.xml 文件,这是咱们的“装备清单”。我们需要添加几样核心装备:

  1. MySQL驱动:连接数据库的桥梁。
  2. Druid连接池(可选但推荐):阿里巴巴出品的高性能数据库连接池,监控功能强大,生产环境必备。
  3. Mybatis Plus Starter:主角登场。
  4. mybatis-spring这是 Spring Boot 3.0 整合的关键! 必须用 3.0.x 版本,否则启动会报错。

我把完整的依赖配置贴出来,你直接复制到 <dependencies> 标签里就行:

<dependencies>
    <!-- Spring Boot 基础Web依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- MySQL 驱动 -->
    <dependency>
        <groupId>com.mysql</groupId>
        <artifactId>mysql-connector-j</artifactId>
        <scope>runtime</scope>
    </dependency>

    <!-- Druid 连接池 -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid-spring-boot-3-starter</artifactId>
        <version>1.2.20</version>
    </dependency>

    <!-- MyBatis Plus 核心依赖 -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.5.5</version>
    </dependency>

    <!-- 关键!Spring Boot 3.0 需要此版本 -->
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis-spring</artifactId>
        <version>3.0.3</version>
    </dependency>

    <!-- 测试依赖 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <!-- Lombok,简化实体类编写,非必需但强烈推荐 -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

这里重点说一下 mybatis-spring 这个依赖。在 Spring Boot 2.x 时代,我们通常不需要显式引入它,因为 mybatis-spring-boot-starter 内部都管理好了。但升级到 Spring Boot 3.0 后,由于一些底层接口的变化,必须显式引入兼容的 3.0.x 版本,否则你会遇到一个典型的错误:Invalid value

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值