注:本文大部分内容引自博客 https://www.cnblogs.com/happy4java/p/11206801.html ,本记录只是以个人理解的角度做个记录,方便以后自己随取随用

首先引入依赖

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

mapper 文件会跟以前有点变化

@Mapper
public interface UserMapper extends BaseMapper<User> {

}

然后在 Controller 里直接 用mapper 调用就可以了,比如

 @PostMapping("/addUser")
    @ApiOperation("新增用户")
    public Result addUser(@RequestBody User user){

        /**参数校验*/
        String error = ValidatorUtil.validate(user);
        if (!EmptyUtil.isEmpty(error)) {
            return Result.failure(ResultCode.INTERNAL_SERVER_ERROR,error);
        }
        /**用户注册*/
        userMapper.insert(user);
        return  Result.success(user);
    }

这个 userMapper.insert(user) 其实是 mybatis plus 封装的方法,可以看到我们 的mapper 文件中并没有 写 insert 的方法

就整合完了,其他的使用就 慢慢去发掘啦

mybatis-plus常用

下面列出一些mybatis-plus中常用的东西:

1、指定实体类对应的数据库表名

@TableName(value = "user")

在实体类与数据库表明不是对应的情况下使用,如:

@Data
@TableName(value = "user")
public class UserEntity {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

2、指定字段对应的数据库字段名

@TableField(value = "age")

如:

@Data
@TableName(value = "user")
public class UserEntity {
    private Long id;
    private String name;

    @TableField(value = "age")
    private Integer userAge;
    private String email;
}

3、插入数据,得到主键

调用mybatis plus 提供的insert方法,执行后,会把主键设置到入参的id属性中,如下:

img

4、分页

配置分页插件:

@Bean
public PaginationInterceptor paginationInterceptor() {
    return new PaginationInterceptor();
}

分页示例:

img