LambdaQueryWrapper和QueryWrapper的区别
时间: 2023-07-25 12:22:17 浏览: 285
mybatis-plus QueryWrapper条件查询器
LambdaQueryWrapper和QueryWrapper是MyBatis-Plus中的两种查询构造器(Wrapper),它们的作用都是用于构建SQL查询条件。
区别如下:
1. LambdaQueryWrapper使用Lambda表达式,可以更加方便地进行条件构造,避免手写字符串拼接出错的风险;而QueryWrapper使用链式调用,需要手写字符串拼接条件。
2. LambdaQueryWrapper在编译期就能够检查Lambda表达式的正确性,而QueryWrapper需要在运行时才能检查字符串拼接的正确性。
3. LambdaQueryWrapper支持实体属性进行条件构造,而QueryWrapper只能使用数据库列名。
4. 在性能上,LambdaQueryWrapper相对QueryWrapper更加高效,因为LambdaQueryWrapper使用了缓存,避免了每次构造条件都要解析Lambda表达式的开销。
总之,使用LambdaQueryWrapper能够更加方便、安全、高效地构造SQL查询条件。
阅读全文