MyBatis

您所在的位置:网站首页 mybatisplus修改数据并保存 MyBatis

MyBatis

2024-07-11 04:47| 来源: 网络整理| 查看: 265

根据指定字段更新或插入 1、概述2、实现方式2、总结

1、概述

MyBatis-Plus中提供了一个saveOrUpdate()方法,默认情况下可以根据主键是否存在进行更新或插入操作,但是实际场景中,根据指定字段进行更新或插入的情况也非常多见,今天就记录一下如何根据指定字段进行更新或插入操作。

2、实现方式

IService中存在一种这样的方法,他接收两个参数,

default boolean saveOrUpdate(T entity, Wrapper updateWrapper) { return this.update(entity, updateWrapper) || this.saveOrUpdate(entity); }

在执行时他的执行逻辑是这样的:

首先根据updateWrapper查询需要更新哪个记录;如果能查询到记录,则进行更新操作,更新时会根据entity对象属性的值进行更新,注意null值会忽略,如果未能查询到记录,则会把entity对象进行插入操作;

以一段代码给出详细的解释:

// 导入必要的类 import com.baomidou.mybatisplus.core.conditions.query.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; // 创建一个UpdateWrapper对象,指定查询条件 UpdateWrapper updateWrapper = Wrappers.query(); updateWrapper .eq("id", 123); // 假设这里是你的指定字段和条件 // 调用saveOrUpdate方法,传入实体对象和UpdateWrapper对象 userMapper.saveOrUpdate(user, updateWrapper ); 2、总结

总的来说,saveOrUpdate(T entity, Wrapper updateWrapper)方法会根据指定的条件先进行查询,然后根据查询结果自动决定是执行更新操作还是插入操作,从而实现根据指定字段执行保存或更新的逻辑。 我是欧阳方超,把事情做好了自然就有兴趣了,如果你喜欢我的文章,欢迎点赞、转发、评论加关注。我们下次见。 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3