mybatis-plus update更新操作的三种方式(小结)

下面我来详细讲解“mybatis-plus update更新操作的三种方式(小结)”的完整攻略。

一、mybatis-plus update更新操作的三种方式

在mybatis-plus中,更新操作有三种方式:updateById、update、updateBatchByIds。下面分别进行介绍。

1. updateById

定义

updateById方法会根据传入的实体类对象更新该对象对应关系型数据库表中的内容,匹配的维度是id字段,如果传入的对象中没有id字段,则会抛出异常。

示例

User user = new User();
user.setId(1L).setUserName("test").setPassword("test123");
int result = userMapper.updateById(user);

// SQL: UPDATE user SET user_name=?, password=? WHERE id=?
// 参数:test, test123, 1

2. update

定义

update方法会根据传入的Wrapper对象封装的条件进行更新操作,更新的对象为传入的实体类对象。其中Wrapper对象封装了查询/更新的条件、排序等信息。

示例

UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("id", 1L).set("user_name", "test").set("password", "test123");
int result = userMapper.update(new User(), updateWrapper);

// SQL: UPDATE user SET user_name=?, password=? WHERE id=?
// 参数:test, test123, 1

3. updateBatchByIds

定义

updateBatchByIds方法会根据传入的实体类对象列表进行批量更新操作,匹配的维度是id字段,如果传入的对象中没有id字段,则会抛出异常。

示例

List<User> userList = new ArrayList<>();
User user1 = new User().setId(1L).setUserName("test1").setPassword("test123");
User user2 = new User().setId(2L).setUserName("test2").setPassword("test123");
userList.add(user1);
userList.add(user2);
int result = userMapper.updateBatchById(userList);

// SQL: UPDATE user SET user_name=?, password=? WHERE id=?
// 参数:test1, test123, 1; test2, test123, 2

二、总结

以上就是mybatis-plus update更新操作的三种方式的详细介绍。其中,updateById适用于根据主键id更新单条记录的场景;update适用于根据复杂条件更新单条记录的场景;updateBatchByIds适用于根据主键id批量更新多条记录的场景。在实际开发中,可以根据具体的业务需求来选择相应的方式进行更新操作,提高数据处理的效率。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mybatis-plus update更新操作的三种方式(小结) - Python技术站

(1)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • Python中的hypot()方法使用简介

    Python中的hypot()方法使用简介 简介 hypot() 方法返回欧几里得范数 sqrt(xx + yy)。 即,求解对应点(x,y)的极坐标 r。 语法 hypot()方法的语法如下: math.hypot(x, y) 参数 以下是 hypot()方法的参数: x — 数值表达式 y — 数值表达式 返回值 hypot()方法返回两个参数平方和…

    html 2023年5月30日
    00
  • edge浏览器怎么打开兼容模式实现IE浏览器的功能?

    以下是“Edge浏览器怎么打开兼容模式实现IE浏览器的功能?”的完整攻略: Edge浏览器怎么打开兼容模式实现IE浏览器的功能? 在某些情况下,用户需要使用IE浏览器的功能,但是又不想切换到IE浏览器。这时候,用户可以在Edge浏览器中打开兼容模式,实现IE浏览器的功能。下面是具体的操作步骤。 Edge浏览器打开兼容模式的步骤 打开Edge浏览器:用户需要打…

    html 2023年5月18日
    00
  • java操作xml的方法汇总及解析

    Java操作XML的方法汇总及解析 在Java中,我们可以使用多种方式来操作XML文件。下面将介绍常见的几种方式及其优缺点。 DOM方式 DOM(Document Object Model)是一种基于树形结构的XML解析方式,它将整个XML文件解析到内存中,并形成一棵树,我们可以通过访问树节点的方式来操作XML。 优点: 可以对XML进行增删改查等操作 可以…

    html 2023年5月30日
    00
  • 怎么提炼与优化关键词,让您的SEO效果翻倍

    提炼与优化关键词是SEO优化的重要环节,下面是一些完整攻略: 确定目标关键词:首先,您需要确定您的目标关键词。这些关键词应该与您的网站或产品相关,并且应该是您的目标受众正在搜索的关键词。您可以使用一些关键词研究工具,例如Google AdWords关键词规划工具、SEMrush等,来确定您的目标关键词。 扩展关键词列表:在确定了目标关键词后,您需要扩展关键词…

    html 2023年5月17日
    00
  • 完美解决在Servlet中出现一个输出中文乱码的问题

    在Servlet中输出中文时,有时候可能会出现乱码问题,这主要是因为Servlet默认使用ISO-8859-1编码,而中文字符需要使用UTF-8或者GBK编码。本文将深入讲解完美解决这个问题的攻略。 步骤一:设置请求和响应的编码格式 在Servlet中,我们可以通过设置请求和响应的编码格式来解决中文乱码问题。我们可以在Servlet中的doGet或者doPo…

    html 2023年5月31日
    00
  • Win10开机问候语怎么设置?Win10设置开机问候语的方法

    以下是“Win10开机问候语怎么设置?Win10设置开机问候语的方法”的完整攻略: Win10开机问候语怎么设置?Win10设置开机问候语的方法 如果您想在Windows 10开机时显示问候语,可以按照以下步骤进行设置: 打开“运行”对话框:按下“Win + R”键组合,打开“运行”对话框。 输入“regedit”命令:在“运行”对话框中,输入“regedi…

    html 2023年5月18日
    00
  • HTML5注册表单的自动聚焦与占位文本示例代码

    下面我会详细讲解“HTML5注册表单的自动聚焦与占位文本示例代码”完整攻略,步骤如下: 1. 设置自动聚焦 为了提高用户体验和简化用户操作,我们可以使用HTML5的autofocus属性来自动聚焦到某个表单元素上。只需要在表单元素上添加autofocus属性即可实现自动聚焦。 示例代码: <form> <label for="us…

    html 2023年5月30日
    00
  • ASP.NET Session使用详解

    ASP.NET Session使用详解 ASP.NET Session是一种在服务器端存储用户信息的机制,可以在不同的Web页面和Web应用程序中跨不同的请求进行共享。在本篇文章中,我们将深入了解ASP.NET Session的使用,包括如何启用Session、如何存储和读取Session数据、Session的生命周期以及Session的使用场景。 启用Se…

    html 2023年5月30日
    00
合作推广
合作推广
分享本页
返回顶部