MybatisPlus中的LambdaQueryWrapper

LambdaQueryWrapper和QueryWrapper

lambda是JDK8的新特性,都知道很好用,MybatisPlus也想到了,于是LambdaQueryWrapper出来了

以前的QueryWrapper比如一个eq("数据库字段名字","值"),我们在表字段设计时,很多都是用_拼接的,很容易把数据库字段名输入错误

所以我们使用LambdaQueryWrapper,不需要输入数据库字段名字,输入实体类的对应驼峰命名即可

使用

Maven引入依赖

<dependency>

    <groupId>com.baomidou</groupId>

    <artifactId>mybatis-plus-boot-starter</artifactId>

    <version>3.5.1</version>

</dependency>

LambdaQueryWrapper三种写法

@RestController
@RequestMapping("/test")
@Slf4j
@RequiredArgsConstructor
public class TestController {

    private final TestService testService;

    @NonNull
    private TestMapper testMapper;

    @GetMapping("/testLambda")
    public Result testLambda() {
        LambdaQueryWrapper<Test> query = new LambdaQueryWrapper<>();
        query.select(Test::getName).eq(Test::getId, 14);

        List<Test> tests1 = testMapper.selectList(query);

        List<Test> tests2 = testMapper.selectList(Wrappers.<Test>lambdaQuery().eq(Test::getId, 14));

        List<Test> tests3 = testMapper.selectList(Wrappers.<Test>query().lambda().eq(Test::getId, 16));

        System.out.println(tests1);

        System.out.println(tests2);

        System.out.println(tests3);

        return Result.success("成功");
    }
}

// 这里需要思考动态条件,判断条件后再拼装sql

​

LambdaQueryWrapper构造器查询

​/**
 * 条件构造器LambdaQueryWrapper常用方法
*/

wrapper.eq("实体类::查询字段", "条件值"); // 相当于where条件

wrapper.between("实体类::查询字段", "区间一", "区间二"); // 相当于范围内使用的between

wrapper.like("实体类::查询字段", "模糊查询的字符"); // 模糊查询like

wrapper.groupBy("实体类::查询字段"); // 相当于group by分组

wrapper.in("实体类::查询字段", "包括的值,分割"); // 相当于in

wrapper.orderByAsc("实体类::查询字段"); // 升序

wrapper.orderByDesc("实体类::查询字段"); // 降序

wrapper.ge("实体类::查询字段", "要比较的值"); // 大于等于

wrapper.le("实体类::查询字段", "要比较的值"); // 小于等于
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值