IDEA项目使用SpringBoot+MyBatis-Plus的方法

这里是详细的讲解“IDEA项目使用SpringBoot+MyBatis-Plus的方法”的完整攻略,包含了两条示例。

准备条件

为了完成本攻略,你需要事先准备以下条件:

  • JDK 8及以上版本
  • IntelliJ IDEA 2020.3或以上版本
  • Maven 3.0及以上版本
  • SpringBoot 2.4.x版本
  • MyBatis-Plus 3.x版本
  • 数据库(本示例使用MySQL)

1. 创建项目

打开IntelliJ IDEA,选择“New -> Project”菜单项,打开“New Project”对话框。在对话框中选择“Spring Initializr”,然后按照提示进行配置,创建一个Spring Boot项目。

Creating Spring Boot project in IntelliJ IDEA

在项目创建过程中,选择需要使用的依赖和Spring Boot版本,这里需要勾选MyBatis-Plus和MySQL连接器依赖(如下图所示)。

Choosing dependencies in IntelliJ IDEA

等待项目创建完成。现在,你已经有了一个基本的Spring Boot项目,可以开始使用MyBatis-Plus了。

2. 配置数据库连接

在“application.properties”文件中,添加以下配置:

spring.datasource.url=jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

其中,”spring.datasource.url”为数据库的连接地址,”spring.datasource.username”和”spring.datasource.password”为连接到数据库的用户名和密码。

3. 定义实体类和Mapper接口

在项目的src/main/java目录下,创建com.example.demo.entitycom.example.demo.mapper包,分别用于存放实体类和Mapper接口代码。

接着,在com.example.demo.entity包中定义一个实体类User,如下所示:

@Data
public class User {
    private Long id;
    private String name;
    private Integer age;
}

com.example.demo.mapper包中定义一个Mapper接口UserMapper,该接口需要继承MyBatis-Plus的BaseMapper接口,如下所示:

public interface UserMapper extends BaseMapper<User> {
}

4. 配置MyBatis-Plus

在“application.properties”文件中,添加以下配置:

# MyBatis-Plus配置
mybatis-plus.mapper-locations=classpath:mapper/*.xml
mybatis-plus.type-aliases-package=com.example.demo.entity

其中,”mybatis-plus.mapper-locations”为Mapper文件的存放路径,”mybatis-plus.type-aliases-package”为实体类的包名。

5. 编写Mapper XML文件

在项目的src/main/resources目录下创建mapper文件夹,并在mapper文件夹中创建UserMapper.xml文件,定义查询、插入、更新和删除数据的Mapper,如下所示:

<mapper namespace="com.example.demo.mapper.UserMapper">

    <select id="selectById" resultType="com.example.demo.entity.User">
        select id,name,age from t_user where id = #{id}
    </select>

    <insert id="insert" parameterType="com.example.demo.entity.User">
        insert into t_user (id, name, age) values (#{id}, #{name}, #{age})
    </insert>

    <update id="updateById" parameterType="com.example.demo.entity.User">
        update t_user set name = #{name}, age = #{age} where id = #{id}
    </update>

    <delete id="deleteById" parameterType="java.lang.Long">
        delete from t_user where id = #{id}
    </delete>
</mapper>

6. 编写Controller代码

在项目的src/main/java目录下,创建com.example.demo.controller包,并在该包下创建UserController控制器类。

UserController类中,通过UserMapper对象执行数据库操作,如下所示:

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

    @Autowired
    private UserMapper userMapper;

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

    @PostMapping
    public void addUser(@RequestBody User user) {
        userMapper.insert(user);
    }

    @PutMapping("/{id}")
    public void updateUser(@PathVariable("id") long id, @RequestBody User user) {
        user.setId(id);
        userMapper.updateById(user);
    }

    @DeleteMapping("/{id}")
    public void deleteUser(@PathVariable("id") long id) {
        userMapper.deleteById(id);
    }
}

示例1:查询用户信息

启动应用,使用Postman或其他工具发送Http GET请求:http://localhost:8080/user/1

应该会返回一个JSON格式的响应,包含id、age、name属性的用户对象,如下所示:

{
    "id": 1,
    "name": "Alice",
    "age": 18
}

示例2:插入用户信息

同样是使用Postman等工具,这次发送一个Http POST请求:http://localhost:8080/user

请求体为一个JSON格式的用户对象,如下所示:

{
    "id": 2,
    "name": "Bob",
    "age": 20
}

执行完成后,应该会在数据库表t_user中看到包含了这条记录。

结论

至此,我们已经完成了一个基于Spring Boot和MyBatis-Plus的的CURD操作示例程序。这只是这两个框架的简单入门,你可以根据自己的需求进行更多更为深入的学习。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:IDEA项目使用SpringBoot+MyBatis-Plus的方法 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • win2K下IIS5.0配置asp+cgi+php+mysql全攻略

    针对“win2K下IIS5.0配置asp+cgi+php+mysql全攻略”的完整攻略,我结合实际操作经验,详细阐述以下步骤和注意事项。 确认安装IIS5.0 首先,我们需要确定已经在win2K系统中安装了IIS5.0,具体步骤如下: 点击“开始”菜单,进入“设置”选项卡; 选择“控制面板”,然后点击“添加/删除程序”; 在列表中找到“添加/删除Window…

    Java 2023年5月20日
    00
  • Java excel数据导入mysql的实现示例详解

    Java excel数据导入mysql的实现示例详解 背景 在项目中,我们常常需要将Excel表格中的数据导入到MySQL数据库中,这是一种常用的数据导入方式。本文将介绍如何使用Java将Excel中的数据导入到MySQL数据库中,并提供两个示例供大家参考。 第一步:导入Excel相关的依赖 本示例中,我们使用Apache POI来操作Excel文件。在Ma…

    Java 2023年5月20日
    00
  • 提高开发质量的 5 个必要实践

    单元测试 什么是单元测试 ? 单元测试通常是指对一个函数或方法测试。单元测试的目的是验证每个单元的行为是否符合预期,并且在修改代码时能够快速检测到任何潜在的问题。通过编写测试用例,我们可以验证这些模块在特定输入下是否产生正确的输出。单元测试的目的是确保每个模块在各种情况下都能正常运行。 写单元测试的好处 可以带来以下几个好处: 提高代码质量:单元测试可以我们…

    Java 2023年4月25日
    00
  • Springboot安全框架整合SpringSecurity实现方式

    Spring Boot 安全框架整合 Spring Security 实现方式 Spring Boot 是基于 Spring 框架的快速开发框架,而 Spring Security 是 Spring 生态中的安全框架,提供了安全认证、授权等功能。本文将介绍如何在 Spring Boot 中整合 Spring Security 实现安全认证和授权。 Sprin…

    Java 2023年5月20日
    00
  • java中栈和队列的实现和API的用法(详解)

    Java中栈和队列的实现和API的用法 概述 栈和队列是计算机科学中常用的数据结构。栈是一种后进先出(LIFO)的结构,队列则是一种先进先出(FIFO)的结构。Java 中提供了很多实现栈和队列的类库,本篇攻略将详细讲解 Java 中栈和队列的实现和 API 的用法。 栈的实现和 API 的用法 Java 中栈的实现主要基于接口 java.util.Stac…

    Java 2023年5月18日
    00
  • Java ForkJoin框架的原理及用法

    Java Fork/Join 框架 什么是 Java Fork/Join 框架 Java Fork/Join 框架是在 JDK7 中引入的,在 java.util.concurrent 包中,它提供了一种并行执行任务的方式,能够将一个大任务拆分成多个小任务进行处理,其中包括我们熟知的 MapReduce。 Fork/Join 的原理 Java Fork/Jo…

    Java 2023年5月26日
    00
  • JAVA环境搭建之MyEclipse10+jdk1.8+tomcat8环境搭建详解

    JAVA环境搭建之MyEclipse10+jdk1.8+tomcat8环境搭建详解 本文将为初学者详细讲解如何在Windows操作系统上搭建MyEclipse10+jdk1.8+tomcat8环境,使得能够愉快地进行JAVA程序开发。 1. 准备工作 在进行环境搭建之前,需要确保系统中已经安装好了以下软件: JDK1.8及以上版本 Tomcat8及以上版本 …

    Java 2023年5月19日
    00
  • Java 实战项目之疫情防控管理系统详解

    Java 实战项目之疫情防控管理系统详解 1. 项目介绍 该项目是一个基于Java的疫情防控管理系统。通过该系统,用户可以实现疫情病例的查询、疫情防控信息的发布和员工健康信息的管理等功能。 2. 技术栈 2.1 前端技术栈 HTML/CSS/JavaScript jQuery Bootstrap 2.2 后端技术栈 Java Spring/Spring MV…

    Java 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部