SpringBoot 集成 MybatisPlus 一——介绍

MybatisPlus 是 Mybatis 的升级版本,是对 Mybatis 的简化,因为他们的口号就是“为简化开发而生”。

1、创建数据表

CREATE TABLE ​​User​​ (

​id​​ INT NOT NULL,

​username​​ VARCHAR(50) NULL DEFAULT NULL,

​gendar​​ CHAR(2) NULL DEFAULT NULL,

​remark​​ VARCHAR(50) NULL DEFAULT NULL

);

向表中插入数据

INSERT INTO user VALUES(1, 'admin', '男', '管理员账号')

2、创建 SpringBoot 工程

3、引用 MyBatisPlus 三方包

在pom.xml中引入第三方包,这里需要注意的是,除了引入 mybatis-plus 包,还需要引入 mybatis-plus 专门为 springboot 封装的 starter 包。

<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus</artifactId>
  <version>3.5.2</version>
</dependency>
<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus-boot-starter</artifactId>
  <version>3.4.3.1</version>
</dependency>

4、创建 实体类 文件

创建 pojo 包,并在包下创建 User 类。

实体类的类名与各成员变量名称,可与数据表中各字段名称一致,方便进行映射。

也可以在类中进行手动映射:

可以在类名上使用注解 ​​@TableName(value = "数据表名")​​,建立实体类和数据表之间的关联;

在属性名称上使用注解 ​​@TableField(value = "数据表列名")​​,建立属性名和数据表字段之间的关联。

package com.test.pojo;

@TableName(value = "user")
public class User {
    @TableField(value = "id")
    Integer id;
    String username;
    String gendar;
    String remark;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getGendar() {
        return gendar;
    }

    public void setGendar(String gendar) {
        this.gendar = gendar;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", username='" + username + ''' +
                ", gendar='" + gendar + ''' +
                ", remark='" + remark + ''' +
                '}';
    }
}

5、创建 mapper 接口

创建 mapper 包,并在包下创建 UserMapper 接口。

该接口继承 BaseMapper 接口,并将 BaseMapper 接口的泛型替换为 实体类 的类名。

package com.test.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.test.pojo.User;

public interface UserMapper extends BaseMapper<User> {
}

6、在项目启动类中设置扫描目录

启动类前增加 MapperScan 注解,并在注解中指定需要进行扫描的目录:

因第5步创建的mapper在这个目录下:`com.test.mapper`,所以需要在注解后指定到该包的全路径即可。

package com.test;


import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan("com.test.mapper")
public class TestApplication {
    public static void main(String[] args) {
        SpringApplication.run(TestApplication.class, args);
    }
}

7、配置数据库信息

7.1 添加配置文件

在项目下创建配置文件 application.yml,并配置数据库相关信息,数据库连接参数根据实际填写就行。

在程序执行过程中,如果我们想看到 MyBatisPlus 生成的SQL语句,可以在配置文件中增加以下内容,开启 SQL 日志的打印功能。

7.2 添加数据库依赖

在 pom.xml 中加入 mysql 数据库的驱动类

<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
</dependency>

8、创建测试类

请注意测试类的包路径应与被测试类所在包路径相同。

根据id查询记录并输出到控制台

package com.test;

import com.test.mapper.UserMapper;
import com.test.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
public class TestUser {
    @Autowired
    UserMapper userMapper;

    @Test
    public void getUser(){
        User user = userMapper.selectById(1);
        System.out.println(user);
    }
}

执行测试后输出内容如下:

User{id=1, username='admin', gendar='男', remark='管理员账号'}

猜你喜欢

转载自blog.csdn.net/QQ156881887/article/details/131585759