MybatisPlus中LamdaQueryWrapper 与 QueryWrapper的使用及区别

一、QueryWrapper的使用;

比如有一张表trolley_itme,需要通过device_id查询出符合条件的所有数据(返回List集合);

1、QueryWrapper的最基础的使用方式是这样的:必须写清楚具体的字段名称(即有硬编码的嫌疑)

// 查询条件的构造器:

QueryWrapper<TrolleyItme> queryWrapper = new  QueryWrapper<>();

// deviceId是传进来的参数:

queryWrapper.eq("device_id",deviceId);

// 查询List

List<TrolleyItme>  trolleyItmes = trolleyItmeMapper.selectList(queryWrapper );

 

2、QueryWrapper中使用lambda,避免使用具体的字段名称,不用硬编码,写法更加灵活和优雅

QueryWrapper<TrolleyItme>  queryWrapper = new QueryWrapper<>();

queryWrapper.lambda().eq(TrolleyItme::getDeviceId,deviceId);

List<TrolleyItme>  trolleyItmes = trolleyItmeMapper.selectList(queryWrapper );

 

二、LambdaQueryWrapper的使用;

我们可以直接改成LambdaQueryWrapper构造器来查询:

LambdaQueryWrapper<TrolleyItme>  lambdaWrapper = new LambdaQueryWrapper<>();

lambdaWrapper.eq(TrolleyItme::getDeviceId,deviceId);

List<TrolleyItme>  trolleyItmes = trolleyItmeMapper.selectList(lambdaWrapper);

 

posted @ 2023-05-18 15:33  勇敢-的心  阅读(578)  评论(0编辑  收藏  举报