QueryWrapper和LambdaQueryWrapper和Wrappers

条件构造器

前言:当我们使用MybatisPlus进行数据库操作,条件构造器无可厚非会使用到!

介绍

在这里插入图片描述

Wrapper:条件构造抽象类,是最顶端父类;
AbstractWrapper:用于查询条件封装,生成sql的where条件;
AbstractLambdaWrapper:Lambda语法使用Wrapper统一处理解析lambda获取column。
LambdaQueryWrapper:用于lambda语法使用的查询Wrapper;
LambdaUpdateWrapper:Lambda更新封装Wrapper;
QueryWrapper:Entity对象封装操作类,不是用lambda;
UpdateWrapper:Update条件封装,用于Entity对象更新操作。

一、QueryWrapper

1.1 写法
QueryWrapper<Users> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("username",name);
List<User> user = userMapper.selectList(lambdaQueryWrapper)
1.2 方法解释
queryWrapper.lt();							// 小于
queryWrapper.le();							// 小于等于
queryWrapper.gt();							// 大于
queryWrapper.ge();							// 大于等于
queryWrapper.eq();							// 等于	
queryWrapper.ne();							// 不等于
queryWrapper.betweeen("age”,10,20);			// age在值10到20之间
queryWrapper.notBetweeen("age”,10,20);		// age不在值10到20之间
queryWrapper.like("属性","值");			// 模糊查询匹配值
queryWrapper.notLike("属性","值");			// 模糊查询不匹配值
queryWrapper.likeLeft("属性","值");		// 模糊查询匹配最后一位值
queryWrapper.likeRight("属性","值");		// 模糊查询匹配第一位值‘值%’
queryWrapper.isNull();						// 值为空或null
queryWrapper.isNotNull();					// 值不为空或null
queryWrapper.in("属性",条件,条件);			// 符合多个条件的值
queryWrapper.notIn("属性",条件,条件);			// 不符合多个条件的值
queryWrapper.or();							// 或者
queryWrapper.and();							// 和
queryWrapper.orderByAsc(“属性”);				// 根据属性升序排序
queryWrapper.orderByDesc(“属性”);				// 根据属性降序排序
queryWrapper.inSql(“sql语句”);				// 符合sql语句的值
queryWrapper.notSql(“sql语句”);				// 不符合SQL语句的值
queryWrapper.esists(“SQL语句”);				// 查询符合SQL语句的值
queryWrapper.notEsists(“SQL语句”);			// 查询不符合SQL语句的值
queryWrapper.select("字段1","字段2","字段3");	// 设置查询字段

二、LambdaQueryWrapper

2.1 写法
LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(User::getUsername,name);
List<User> user = userMapper.selectList(lambdaQueryWrapper)
2.2 方法解释
 wrapper.eq("实体类::查询字段", "条件值");
 wrapper.between("实体类::查询字段", "区间一", "区间二");
 wrapper.like("实体类::查询字段", "模糊查询的字符"); 
 wrapper.groupBy("实体类::查询字段"); 
 wrapper.in("实体类::查询字段", "包括的值,分割"); 
 wrapper.orderByAsc("实体类::查询字段"); 				//升序
 wrapper.orderByDesc("实体类::查询字段");				//降序
 wrapper.ge("实体类::查询字段", "要比较的值"); 			//大于等于
 wrapper.le("实体类::查询字段", "要比较的值"); 			//小于等于

三、Wrappers

3.1 写法
Wrappers.<User>lambdaQuery().eq(User::getUsername,name);
3.2 方法解释
看上面的
  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小杨同学_丶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值