Spring Boot 集成 MyBatis-Plus

在现代的Java开发中,Spring Boot和MyBatis-Plus都是被广泛使用的框架。Spring Boot是一个快速开发框架,可以让我们快速搭建Spring应用,而MyBatis-Plus是MyBatis的增强工具,提供了丰富的功能,如代码生成、自动分页、乐观锁等。本文将介绍如何在Spring Boot项目中集成MyBatis-Plus,并给出相应的示例代码。

1. 创建Spring Boot项目

首先,我们需要创建一个Spring Boot项目。可以通过Spring Initializr(https://start.spring.io/)来快速生成项目。在生成项目时选择以下依赖:

  • Spring Web
  • MyBatis-Plus Boot Starter
  • MySQL Driver(如果使用MySQL数据库的话)

2. 配置application.yml

在项目的src/main/resources目录下,找到application.yml文件,进行如下配置:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
    username: root
    password: password
    driver-class-name: com.mysql.cj.jdbc.Driver

mybatis-plus:
  global-config:
    db-config:
      id-type: auto   # 主键自增
      logic-delete-value: 1  # 逻辑删除值
      logic-not-delete-value: 0  # 逻辑未删除值

3. 创建实体类

接下来,我们需要创建一个实体类,例如User类,表示用户表。

package com.example.demo.entity;

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

@Data
@TableName("user")
public class User {

    @TableId(type = IdType.AUTO)
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

4. 创建Mapper接口

然后,我们需要创建一个Mapper接口,MyBatis-Plus可以通过此接口进行数据库操作。

package com.example.demo.mapper;

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

public interface UserMapper extends BaseMapper<User> {
}

5. 创建服务层

接下来,我们可以创建一个服务层来封装业务逻辑。

package com.example.demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.demo.entity.User;

public interface UserService extends IService<User> {
}

实现该接口的服务类如下:

package com.example.demo.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
}

6. 创建控制器

最后,我们来创建一个控制器来处理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> getAllUsers() {
        return userService.list();
    }

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

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getById(id);
    }
}

7. 启动应用

现在,我们可以启动Spring Boot应用,访问http://localhost:8080/users来获取用户列表,使用POST请求添加用户。这便完成了Spring Boot与MyBatis-Plus的集成。

总结

通过本次示例,我们简单地演示了如何在Spring Boot项目中集成MyBatis-Plus,包括项目配置、实体类、Mapper、服务层和控制器的实现。MyBatis-Plus的引入,极大地简化了数据库操作的复杂性,使得开发更高效。希望本文对你有所帮助!

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部