MyBatisPlus——CRUD

一、BaseMapper——通用CRUD接口

通用 CRUD 封装BaseMapper (opens new window)接口,为 Mybatis-Plus 启动时自动解析实体表关系映射转换为 Mybatis 内部对象注入容器
在这里插入图片描述

二、插入操作

(一) 方法定义

在这里插入图片描述

(二) @TableId 设置id的生成策略

数据已经写入到了数据库,但是,id的值不正确,我们期望的是数据库自增长,实际是MP生成了id的值写入到了数据库
在这里插入图片描述
使用@TableId设置数据库id自增
在这里插入图片描述
在这里插入图片描述

(三) @TableField

(1) 对象中的属性名和字段名不一致的问题(非驼峰)

在这里插入图片描述
在这里插入图片描述

(2) 对象中的属性字段在表中不存在的问题

在未添加@TableField,如果执行插入操作时,为属性address赋值,在程序执行插入操作时会报错显示插入失败。因此需要用 @TableField标识该属性字段不存在。
在这里插入图片描述
在这里插入图片描述

(3) 查询时不返回该字段的值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(四) 细节

(1) 当实体类中某个成员变量值为null时,生成的sql语句中就不会有该属性

在这里插入图片描述
以插入语句为例
在这里插入图片描述

三、更新操作

(一) updateById 根据id更新

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(二) update 根据条件更新

在这里插入图片描述

(1) 使用QueryWrapper

在这里插入图片描述
在这里插入图片描述

(2) 使用UpdateWrapper

在这里插入图片描述
在这里插入图片描述

(三) 细节

在这里插入图片描述
在mybatisplus中,update语句中会默认把不为null的属性添加在更新语句中

在这里插入图片描述
在这里插入图片描述
注意:数据库与实体类属性对应,尽量要使用包装类

四、删除操作

(一) 根据 ID 删除 deleteById

在这里插入图片描述
在这里插入图片描述

(二) 根据 columnMap 条件删除记录 deleteByMap

将columnMap中的元素设置为删除的条件,多个之间为and关系
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(三) delete

在这里插入图片描述

(1) 方式一

在这里插入图片描述
在这里插入图片描述

(2) 方式二

在这里插入图片描述
在这里插入图片描述

(四) 根据ID批量删除 deleteBatchIds

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、查询操作

在这里插入图片描述

(一) 根据ID查询 selectById

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(二) 根据ID批量查询 selectBatchIds

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(三) 根据条件查询一条记录 selectOne

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:当查查询的数据超过一条时,会抛出异常

(四) 根据条件查询总记录数 selectCount

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(五) 根据根据条件查询全部记录 selectList

注意:使用selectList方法进行查询时,如果未查出记录,则返回一个空的集合,而不是null
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(六) 分页查询

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值