MyBatis-Plus快速实现增删改[MyBatis-Plus系列]

本文是MyBatis-Plus系列教程的一部分,介绍了如何使用MyBatis-Plus进行数据的增删改操作,包括通过insert()插入数据,按ID或条件修改数据,按ID或条件删除数据,并提供了相关配置和示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

师傅:徒儿,看你最近情绪波动很大呀,这是怎么了?

悟纤:还不是感情的事情来着。

师傅:怎么说来着?

悟纤:感情中间产生了太多的误会了,乱的很,老天爷给设置了太多的考题了,让我们情绪波动很大。

师傅:那针对这一份感情你是怎么想的呢 ?

悟纤:喜欢就是喜欢呗,想那么多干嘛,即使最后伤的支离破碎,也不要让自己后悔。

师傅:不错~徒儿这是认真了。

师傅:爱情要有,面包也要,学习不能落下,这样才能够给爱情加个保险。

悟纤:师傅说的是。

师傅:那咱们开始吧~ 这一小节来学习一下增三改的操作。

悟纤:师傅,那咱们开始吧。

导读

Hi,大家好,我是悟纤。我就是我,不一样的烟火。我就是我,与众不同的小苹果。

在前面的小节中,介绍了MyBatis-Plus的基本使用,需要添加什么依赖以及基本的注解配置就可以快速使用MyBatis-Plus的查询selectList。这一节来看一下常用的增删改如何操作呢 ?

👇🏻👇🏻👇🏻EasyPoi实战系列

01.《MyBatis-Plus是什么以及特性[MyBatis-Plus系列]》

02.《MyBatis-Plus快速开始 [MyBatis-Plus系列]》

本节是基于02节的代码接着往下进行讲解的。

一、插入数据

往数据库中插入一条数据,用到的方法是insert(Entity),测试代码如下:

@Testpublic void testInsert() {    User user = new User();    user.setName("悟纤");    user.setAge(18);    user.setEmail("aa@qq.com");    int rs = userMapper.insert(user);    System.out.println("成功插入条数:"+rs+"--id:"+user.getId());}

运行结果如下:

成功插入条数:1--id:1694245417048383489

说明:insert()方法的返回值是成功插入到数据库的条数,对于主键id的话,可以通过实体类中的getId()进行获取,如果命名不是id呢?这个是可以通过注解指定的,后面会讲到这方面的注解。

如果想要在控制台查看执行的SQL的话,需要在application.properties进行配置:

# mybatis-plus打印sqlmybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

这个时候在执行的话,可以在控制台看到如下的日志信息:

通过这里也可以看出这个的id,是在代码层面进行生成的,如果想要使用数据库的自增的id的话,又要怎么做呢?后续会进行讲解说明。

二、修改数据

修改数据主要两种方式:其一就是通过id的方式进行修改;其二就是通过查询条件进行修改。

通过id的方式进行修改:

@Testpublic void testUpdateById() {    User user = new User();    user.setId(1L);    user.setName("Jone.updateById");    int rs = userMapper.updateById(user);    System.out.println("修改成功的条数:"+ rs);}

运行结果:

说明:通过这里可以看出,只有设置值的字段才会进行修改。

通过查询条件进行修改,举例说明通过邮箱进行修改。

@Testpublic void testUpdateQueryCondition() {    User user = new User();    user.setName("Jone.updateQueryCondition");    UpdateWrapper<User> wrapper = new UpdateWrapper<>();    wrapper.eq("email","test1@baomidou.com");    int rs = userMapper.update(user,wrapper);    System.out.println("修改成功的条数:"+ rs);}

运行结果:

说明:参数user是要修改的对象的字段,有设置值就修改;UpdateWrapper是设置修改的条件,当然对于UpdateWrapper不仅仅能够构造条件,还能进行其它的设置,这个后面在介绍。

三、删除数据

删除数据主要两种方式:其一就是通过id的方式进行删除;其二就是通过查询条件进行删除。

通过id的方式进行删除:

@Testpublic void testDeleteById() {    int rs = userMapper.deleteById(1694245417048383489L);    System.out.println("删除成功的条数:"+ rs);}

运行结果:

通过查询条件进行删除,举例说明通过邮箱进行删除:

@Testpublic void testDeleteQueryCondition() {    UpdateWrapper<User> wrapper = new UpdateWrapper<>();    wrapper.eq("email","aa@qq.com");    int rs = userMapper.delete(wrapper);    System.out.println("删除成功的条数:"+ rs);}

运行结果:

另外还可以执行执行如下方法进行批量删除操作:

userMapper.deleteBatchIds(Collection<?> idList);

小结

通过本节的讲解,我们可以很方便的使用MyBatis-Plus进行数据的增删改操作:

(1)插入数据:insert(T entity)

(2)删除数据:deleteById(Serializable id)和delete(@Param("ew") Wrapper<T> queryWrapper)

(3)修改数据:updateById(@Param("et") T entity) 和 update(@Param("et") T entity, @Param("ew") Wrapper<T> updateWrapper)

(4)开启SQL打印配置:

# mybatis-plus打印sqlmybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。

à悟纤学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

ShardingJDBC分库分表:http://t.cn/A6ZarrqS

分布式事务解决方案:http://t.cn/A6ZaBnIr

JVM内存模型调优实战:http://t.cn/A6wWMVqG

Spring入门到精通:https://t.cn/A6bFcDh4

大话设计模式之爱你:https://dwz.cn/wqO0MAy7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟纤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值