Spring Boot 3.x 与 JDK 21 整合 MyBatis-Plus 的实现

在现代的 Java 开发中,Spring Boot 和 MyBatis-Plus 凭借其简洁、高效的特性,成为了开发者的热门选择。本篇文章将介绍如何将 Spring Boot 3.x 和 JDK 21 整合 MyBatis-Plus,以便快速构建一个简单的 CRUD 应用。我们将从创建项目开始,并演示如何配置与使用 MyBatis-Plus。

1. 创建 Spring Boot 项目

可以使用 Spring Initializr 创建一个新的 Spring Boot 项目。选择以下配置:

  • 项目:Maven Project
  • 语言:Java
  • Spring Boot 版本:3.x
  • JDK:21
  • 依赖项:
  • Spring Web
  • MyBatis-Plus Boot Starter
  • Spring Data JPA(可选)
  • 数据库驱动(H2, MySQL 等,根据需要选择)

创建完项目后,导入到 IDE 中。

2. 添加 MyBatis-Plus 依赖

pom.xml 文件中,确保已经引入了 MyBatis-Plus 相关的依赖。如下示例:

<dependencies>
    <!-- Spring Boot Starter -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
    <!-- MyBatis-Plus Starter -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.5.3</version>
    </dependency>
    <!-- 数据库驱动,例如 MySQL -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    <!-- 其他依赖 -->
</dependencies>

3. 配置数据源

src/main/resources/application.yml 中,配置数据库连接信息和 MyBatis-Plus 的设置:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test_db?useSSL=false&serverTimezone=UTC
    username: your_username
    password: your_password
    driver-class-name: com.mysql.cj.jdbc.Driver
  mybatis-plus:
    # 开启链式查询
    configuration:
      mapper-locations: classpath*:mapper/**/*.xml

4. 创建实体类

创建一个简单的用户实体类 User,并使用 MyBatis-Plus 的注解:

package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

@Data
@TableName("user")
public class User {
    @TableId
    private Long id;
    private String name;
    private Integer age;
}

5. 创建 Mapper 接口

定义一个 Mapper 接口,继承 MyBatis-Plus 的 BaseMapper

package com.example.demo.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.demo.entity.User;

public interface UserMapper extends BaseMapper<User> {
}

6. 创建 Service 类

创建一个服务类来封装业务逻辑:

package com.example.demo.service;

import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {

    @Autowired
    private UserMapper userMapper;

    public List<User> getAllUsers() {
        return userMapper.selectList(null);
    }

    public void saveUser(User user) {
        userMapper.insert(user);
    }

    // 其他业务逻辑
}

7. 创建 Controller

添加 Controller 以处理 HTTP 请求:

package com.example.demo.controller;

import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/users")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping
    public List<User> getUsers() {
        return userService.getAllUsers();
    }

    @PostMapping
    public void addUser(@RequestBody User user) {
        userService.saveUser(user);
    }

    // 其他 API 接口
}

8. 运行项目

确保数据库已经创建并包含相应的表结构。可以使用 H2 数据库的内存模式来快速测试。运行 Spring Boot 项目时,访问 http://localhost:8080/users,你可以看到返回的用户列表。

总结

本文介绍了如何在 Spring Boot 3.x 项目中使用 JDK 21 整合 MyBatis-Plus,并实现简单的 CRUD 操作。这种架构可以让你快速开发高效的数据库应用,享受 Spring Boot 和 MyBatis-Plus 带来的便利。希望这篇教程能帮助你更好地理解 MyBatis-Plus 的使用。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部