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日

相关文章

  • 如何让java只根据数据库表名自动生成实体类

    让我来讲解一下如何让Java只根据数据库表名自动生成实体类的完整攻略。 1. 创建Maven工程 首先,我们需要创建一个Maven工程,用于管理我们的项目依赖和构建。 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or…

    Java 2023年5月20日
    00
  • 微信小程序(十五)checkbox组件详细介绍

    微信小程序(十五)checkbox组件详细介绍 简介 checkbox是一种可以在多个选项中单独选择的组件。在微信小程序中使用checkbox组件可以方便地实现多选功能。checkbox组件的主要属性有value、checked、disabled。value代表checkbox的值,checked代表是否选中,disabled代表是否禁用。 基本用法 &lt…

    Java 2023年5月23日
    00
  • Java实现截取字符串的操作详解

    Java实现截取字符串的操作详解 Java是一种非常流行的编程语言,它内置了许多字符串操作函数,其中截取字符串也是其中一种常用的操作技能。本文旨在详细讲解Java实现截取字符串的操作,并提供两个示例进行说明。 什么是截取字符串? 截取字符串是指从一个字符串中抽取出一个子字符串。例如,有一个字符串“Hello world”,如果我们想要取出“Hello”这个子…

    Java 2023年5月26日
    00
  • Java语言实现最大堆代码示例

    让我为您详细讲解“Java语言实现最大堆代码示例”的完整攻略。 最大堆简介 最大堆是一种满足父节点比子节点大的堆,它通常用于对数据进行排序和查找最大值。最大堆可以通过用数组表示、从根节点开始,每次比较左右子节点的大小,决定是否交换它们来实现。 Java实现最大堆代码示例 下面是Java实现最大堆代码的示例: public class MaxHeap { pr…

    Java 2023年5月23日
    00
  • 子线程任务发生异常时主线程事务回滚示例过程

    子线程任务发生异常时主线程事务回滚是一种常见的处理机制,下面我将为您提供一个完整的攻略来解释相关的过程。 首先,我们需要了解一些基本的知识点: 什么是子线程子线程就是在主线程之外启动的线程。子线程可以并行执行,无需等待主线程完成。 什么是主线程主线程是程序的入口,它负责启动并控制整个程序的执行流程。所有的子线程都是由主线程创建的。 什么是事务事务是一组相关的…

    Java 2023年5月26日
    00
  • Tomcat 类加载器的实现方法及实例代码

    Tomcat 是一款使用 Java 语言开发的开源 Web 服务器,它采用了各种技术实现了高效地处理 Web 请求和 Web 应用的能力。其中,Tomcat 类加载器是 Tomcat 系统中的一个重要组件,主要负责负责动态增加或删除各个 Web 应用的类库,为其中运行的代码提供类加载服务。下面,我们将详细讲解 Tomcat 类加载器的实现方法及实例代码。 T…

    Java 2023年6月15日
    00
  • SpringBoot应用的打包和发布实现

    打包和发布Spring Boot应用可以使用多种方法,下面是一些常见的方法: 方法一:使用Maven插件打包并上传到服务器 步骤一:使用Maven构建Spring Boot应用 在pom.xml文件中添加以下依赖: <!– 引入Spring Boot的pom依赖 –> <parent> <groupId>org.spr…

    Java 2023年5月19日
    00
  • jsp中定义和使用方法示例介绍

    下面详细讲解“JSP中定义和使用方法示例介绍”的攻略。 一、定义和使用方法 1.1 定义方法 在JSP中定义方法,可以使用<%! %>标签。例如: <%! public int add(int num1, int num2) { return num1 + num2; } %> 以上代码定义了一个名为“add”的方法,该方法返回两个整…

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