Spring Boot 单体项目创建与整合 MyBatis-Plus
在现代软件开发中,Spring Boot 作为一种快速开发框架,因其简化的配置和强大的功能被广泛使用。MyBatis-Plus 是 MyBatis 的增强工具,可以简化数据库操作。本文将介绍如何在一个 Spring Boot 单体项目中整合 MyBatis-Plus。
一、创建 Spring Boot 项目
- 使用 Spring Initializr 创建项目
打开Spring Initializr,在页面上进行如下配置:
- 项目类型:Maven Project
- 开发语言:Java
- Spring Boot 版本:选择最新稳定版
- Group:
com.example
- Artifact:
demo
- 依赖项:选择
Spring Web
,MyBatis-Plus
,Spring Boot DevTools
,MySQL Driver
(如果你使用的数据库是 MySQL)
点击 "Generate" 按钮,下载生成的压缩包并解压到你想要的目录。
- 引入依赖
在 pom.xml
中,确保已经引入以下依赖(大部分会在你创建时自动生成):
xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version> <!-- 请根据需要更新版本 -->
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
二、配置文件设置
在 src/main/resources/application.yml
中,配置数据源:
spring:
datasource:
url: jdbc:mysql://localhost:3306/demo_db?useSSL=false&serverTimezone=UTC
username: root
password: your_password
mybatis-plus:
# 开启逻辑删除功能
global-config:
db-config:
logic-delete-value: 1
logic-not-delete-value: 0
三、创建实体类、Mapper 和 Service
- 创建实体类
在 src/main/java/com/example/demo/entity
目录下创建 User.java
:
```java 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; private String email; } ```
- 创建 Mapper 接口
在 src/main/java/com/example/demo/mapper
目录下创建 UserMapper.java
:
```java package com.example.demo.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.example.demo.entity.User; import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper extends BaseMapper
- 创建 Service 层
在 src/main/java/com/example/demo/service
目录下创建 UserService.java
:
```java package com.example.demo.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.example.demo.entity.User;
public interface UserService extends IService
然后实现 UserServiceImpl
:
```java 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
四、创建 Controller
在 src/main/java/com/example/demo/controller
目录下创建 UserController.java
:
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 boolean createUser(@RequestBody User user) {
return userService.save(user);
}
}
五、测试项目
确保你的 MySQL 数据库中有一个名为 demo_db
的数据库,以及一个名为 user
的表。可以执行以下 SQL 创建表:
CREATE TABLE user (
id BIGINT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
age INT,
email VARCHAR(255),
PRIMARY KEY (id)
);
启动项目后,访问 http://localhost:8080/users
来获取用户信息,使用 POST 方法向相同的 URL 提交 JSON 数据以创建用户。
总结
通过以上步骤,我们成功创建了一个 Spring Boot 单体项目并整合了 MyBatis-Plus。MyBatis-Plus 的使用使得数据库操作更加简洁、方便,大大提高了开发效率。希望本教程能够帮助你快速上手 Spring Boot 和 MyBatis-Plus 的整合开发。