Lambdaquerywrapper和querywrapper的区别
时间: 2023-12-14 16:31:31 浏览: 82
mybatis plus条件构造器queryWrapper、updateWrapper
中的LambdaQueryWrapper和QueryWrapper都是MyBatis-Plus框架中的查询构造器,它们的主要区别在于LambdaQueryWrapper支持Lambda表达式,而QueryWrapper不支持。
LambdaQueryWrapper可以使用Lambda表达式来构建查询条件,这样可以避免手写字符串拼接的繁琐和容易出错。例如,使用LambdaQueryWrapper可以这样构建查询条件:
```
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(User::getName, "张三").like(User::getEmail, "@qq.com");
List<User> userList = userMapper.selectList(wrapper);
```
而使用QueryWrapper则需要手写字符串拼接,如下所示:
```
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "张三").like("email", "@qq.com");
List<User> userList = userMapper.selectList(wrapper);
```
因此,使用LambdaQueryWrapper可以使代码更加简洁、易读和易于维护。
阅读全文