MyBatisPlus-QueryWrapper多条件查询及修改方式

MyBatisPlus-QueryWrapper多条件查询及修改方式攻略

简介

MyBatisPlus是一个优秀的持久层框架,提供了丰富的查询和修改功能。其中,QueryWrapper是MyBatisPlus提供的一个用于构建查询条件的工具类,可以方便地实现多条件查询和修改操作。

多条件查询

使用QueryWrapper进行多条件查询的步骤如下:

  1. 导入相关依赖
    xml
    <dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>最新版本</version>
    </dependency>

  2. 创建QueryWrapper对象
    java
    QueryWrapper<Entity> queryWrapper = new QueryWrapper<>();

  3. 添加查询条件
    java
    queryWrapper.eq(\"字段名\", 值); // 等于
    queryWrapper.ne(\"字段名\", 值); // 不等于
    queryWrapper.gt(\"字段名\", 值); // 大于
    queryWrapper.ge(\"字段名\", 值); // 大于等于
    queryWrapper.lt(\"字段名\", 值); // 小于
    queryWrapper.le(\"字段名\", 值); // 小于等于
    queryWrapper.like(\"字段名\", 值); // 模糊查询
    queryWrapper.in(\"字段名\", 值1, 值2); // 包含在指定值中的查询
    queryWrapper.notIn(\"字段名\", 值1, 值2); // 不包含在指定值中的查询
    queryWrapper.isNull(\"字段名\"); // 为空的查询
    queryWrapper.isNotNull(\"字段名\"); // 不为空的查询

  4. 执行查询
    java
    List<Entity> result = entityMapper.selectList(queryWrapper);

示例1:查询年龄大于等于18岁的用户

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.ge(\"age\", 18);
List<User> result = userMapper.selectList(queryWrapper);

示例2:查询名字包含\"张\"并且年龄小于30岁的用户

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.like(\"name\", \"张\");
queryWrapper.lt(\"age\", 30);
List<User> result = userMapper.selectList(queryWrapper);

多条件修改

使用QueryWrapper进行多条件修改的步骤如下:

  1. 创建QueryWrapper对象,添加修改条件
    java
    QueryWrapper<Entity> queryWrapper = new QueryWrapper<>();
    queryWrapper.eq(\"字段名\", 值); // 等于
    queryWrapper.ne(\"字段名\", 值); // 不等于
    queryWrapper.gt(\"字段名\", 值); // 大于
    queryWrapper.ge(\"字段名\", 值); // 大于等于
    queryWrapper.lt(\"字段名\", 值); // 小于
    queryWrapper.le(\"字段名\", 值); // 小于等于
    queryWrapper.like(\"字段名\", 值); // 模糊查询
    queryWrapper.in(\"字段名\", 值1, 值2); // 包含在指定值中的查询
    queryWrapper.notIn(\"字段名\", 值1, 值2); // 不包含在指定值中的查询
    queryWrapper.isNull(\"字段名\"); // 为空的查询
    queryWrapper.isNotNull(\"字段名\"); // 不为空的查询

  2. 创建要修改的实体对象
    java
    Entity entity = new Entity();
    entity.set字段名(新值);

  3. 执行修改
    java
    int affectedRows = entityMapper.update(entity, queryWrapper);

示例1:将年龄大于等于18岁的用户的性别修改为\"女\"

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.ge(\"age\", 18);

User user = new User();
user.setGender(\"女\");

int affectedRows = userMapper.update(user, queryWrapper);

示例2:将名字包含\"张\"并且年龄小于30岁的用户的状态修改为\"禁用\"

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.like(\"name\", \"张\");
queryWrapper.lt(\"age\", 30);

User user = new User();
user.setStatus(\"禁用\");

int affectedRows = userMapper.update(user, queryWrapper);

以上就是使用MyBatisPlus-QueryWrapper进行多条件查询及修改的完整攻略。通过灵活运用QueryWrapper的各种方法,可以轻松实现复杂的查询和修改操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MyBatisPlus-QueryWrapper多条件查询及修改方式 - Python技术站

(0)
上一篇 2023年7月28日
下一篇 2023年7月28日

相关文章

  • js数组方法扩展实现数组统计函数

    JS数组方法扩展实现数组统计函数的攻略如下: 什么是数组统计函数 数组统计函数可以用来对数组进行一些常见的统计操作,例如求和、求平均数、最大值、最小值等等。JS原生的数组方法(如forEach、map、filter、reduce等)可以完成部分数组统计操作,但并不能满足所有需求。因此,我们需要自行实现一些常见的数组统计函数来满足特定的需求。 如何扩展数组方法…

    other 2023年6月25日
    00
  • 合并vector内容

    合并Vector内容 在图形设计中,我们经常会使用矢量图形(Vector Graphics)来制作各类图形和图标,这种图形可以在不失真的情况下进行任意缩放,因此被广泛应用于各类应用中。而为了更方便的使用矢量图形,我们需要对不同的矢量图形进行合并操作,将它们合成为一个图形方便操作。 合并方法 下面,我们介绍几种常用的矢量图形的合并方法。 1. Illustra…

    其他 2023年3月28日
    00
  • 分享一个开源免费、目前最好的api接口管理平台—eolinker

    分享一个开源免费、目前最好的api接口管理平台—eolinker 在开发Web应用程序时,API接口的管理是不可避免的问题。而API接口管理平台可以帮助开发者更好地组织和管理接口文档、测试用例等相关资源,提高开发效率和质量。本文将介绍一个目前最好的开源免费的API接口管理平台—eolinker。 什么是eolinker eolinker是一款开源免费…

    其他 2023年3月29日
    00
  • Windows上SSH服务器配置图文教程

    来讲解一下“Windows上SSH服务器配置图文教程”的完整攻略。 1. 安装OpenSSH Windows 上自带的 SSH 服务器是通过 OpenSSH 实现的。所以,第一步是安装 OpenSSH。 打开 Windows PowerShell,以管理员权限运行。 输入以下命令安装 OpenSSH: powershell Add-WindowsCapabi…

    other 2023年6月25日
    00
  • vue3封装自己的分页组件

    下面是关于“vue3封装自己的分页组件”的完整攻略。 什么是分页组件 分页组件是前端常见的组件之一,用于展示大量数据时,将其拆分成多个页面展示,实现数据的分页浏览。包括页码、下一页、上一页、跳转页面等功能。 如何封装自己的分页组件 在 Vue3 中,可以使用 Composition API 封装自己的分页组件。下面是一个简易的分页组件封装示例: 引入 Pag…

    other 2023年6月25日
    00
  • 浅谈Spring嵌套事务是怎么回滚的

    浅谈Spring嵌套事务是怎么回滚的 Spring框架提供了强大的事务管理功能,其中包括嵌套事务的支持。嵌套事务是指在一个事务中可以包含多个子事务,每个子事务都有自己的独立回滚点。当嵌套事务发生异常时,Spring会根据事务的传播行为和异常类型来决定回滚的策略。 事务传播行为 在Spring中,事务的传播行为定义了事务方法与已存在事务方法的关系。常见的传播行…

    other 2023年7月28日
    00
  • ppt怎么制作创意的loading加载动画?

    当制作PPT演示文稿时,一个令人难忘的颜色、醒目的文本排版和清晰的图像是非常重要的。但是,如果你要在你的PPT中添加一个创意的loading加载动画,你需要知道如何做。 以下是PPT制作创意的loading加载动画的完整攻略: 步骤1:选择合适的loading加载动画 要为你的PPT选择创意的loading加载动画,你需要从几个不同的选项中选择,这些选项包括…

    other 2023年6月25日
    00
  • Springboot集成阿里云OSS上传文件系统教程

    下面我将介绍一个完整的Spring Boot集成阿里云OSS上传文件系统的完整攻略。 1. 引入依赖 我们首先需要在pom.xml文件中引入阿里云OSS的Java SDK依赖,如下所示: <dependencies> <dependency> <groupId>com.aliyun.oss</groupId> …

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部