mybatis-plus使用指南(1)

快速开始

首先 我们 在创建了一个基本的springboot的基础框架以后,在 pom文件中 引入 mybatisplus的相关依赖

复制代码
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3.1</version>
</dependency>

引入依赖成功之后,就可以替换原本的mybatis的依赖了,因为mybatis-plus的宗旨就是

只做增强不做改变,润物细无声 哈哈哈,是不是听起来很牛逼,那么下面我们就开始正式使用 mybatisplus (后文都简称为 mp)

1. 定义mapper

在之前的mybatis中,我们写所有的基本的crud代码都需要自己定义sql,自己写xml文件,在我们的mp中,他就提供了一个 基础的 BaseMapper 接口,我们只需要 让自己的mapper 接口 继承我们的 BaseMpapper 接口就行了,基础的basemapper接口 已经实现的 基本的crud ,我们直接调用就可以了

其中 User 是我们对应数据库user表中 的实体类

然后 我们写一个测试类,注入 usermapper 直接一句代码不用写,就可以调用 基本的crud了

可以看到 我们专门点出来一个方法 更能清晰的看到 basemapper中给我们实现的方法

sql语句的转换规则

我们为什么要在basemapper中写一个 user的 实体,因为·我们要告诉mp 我们要使用哪张表

而且实体的命名也是有规则的

1. @TableName("value")

value 中写的是对应数据库表中的表名

复制代码
@TableName("user")
public class User {
    private Long id;
    private String name;
}

其中还有其他的属性值

2.@TableId

复制代码
@TableName("user")
public class User {
    @TableId
    private Long id;
    private String name;
}

一般该注解只是指定 实体类对应的数据库的主键

3.@TableFiled

复制代码
@TableName("user")
public class User {
    @TableId
    private Long id;
    private String name;
    private Integer age;
    @TableField("isMarried")
    private Boolean isMarried;
    @TableField("concat")
    private String concat;
}

其中的属性对应的是数据库中的字段名

其他的属性可以参考MyBatis-Plus 官方文档

这是常用的 三个基础注解

相关推荐
天天被压力几秒前
【Python 量化取数指南 #13】Python 把行情落库:sqlite 一键存,回测随用随取
java·人工智能·python
天天被压力几秒前
【Python 量化取数指南 #14】Python 清洗行情数据:复权停牌对齐,回测不翻车
java·人工智能·python
独泪了无痕5 分钟前
开发利器Hutool之MapUtil的使用
java·后端
唐青枫9 分钟前
Java ThreadLocal 详解:从线程隔离到线程池实战,彻底避开脏数据与内存泄漏
java
T_Apollo9 分钟前
2.6 Java 11 版本新增特性和类
java
用户37215742613518 分钟前
如何使用 Java 创建 Excel 数据透视表
java
用户31268748772022 分钟前
JVM 内存结构全链路:堆、栈、方法区、元空间
java
大漠孤烟s22 分钟前
7.mybatisplus学习-条件构造器、插件、通用枚举、多数据源环境、MybatisX
mybatis
IT枫斗者枫哥22 分钟前
Spring Boot导入返回409,为什么第一行还是入库了?
java·spring boot·后端
xiaoqiMikko23 分钟前
JVM 线上排查实战(五):升 JDK 17 后进程起不来,十几个老 GC 参数挨个实测(完结)
java·jvm