MyBatisPlus-QueryWrapper多条件查询及修改方式攻略
简介
MyBatisPlus是一个优秀的持久层框架,提供了丰富的查询和修改功能。其中,QueryWrapper是MyBatisPlus提供的一个用于构建查询条件的工具类,可以方便地实现多条件查询和修改操作。
多条件查询
使用QueryWrapper进行多条件查询的步骤如下:
-
导入相关依赖
xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>最新版本</version>
</dependency> -
创建QueryWrapper对象
java
QueryWrapper<Entity> queryWrapper = new QueryWrapper<>(); -
添加查询条件
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(\"字段名\"); // 不为空的查询 -
执行查询
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进行多条件修改的步骤如下:
-
创建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(\"字段名\"); // 不为空的查询 -
创建要修改的实体对象
java
Entity entity = new Entity();
entity.set字段名(新值); -
执行修改
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技术站