- 使用mybatis-plus查询的时候经常会使用到QueryWrapper来构建查询条件,然而我们在写查询属性的时候由于字段名是手动输入的很容易写错字段名,例如:
QueryWrapper wrapper = new QueryWrapper();
// 手写字段名,很容易写错("department_id")
wrapper.eq("department_id", id);
wrapper.eq("is_del", Constant.DeleteFlag.COMMON_INT);
List<ProdPersonnel> data = this.list(wrapper);
- 建议使用LambdaQueryWrapper来构造查询条件,使用起来美观且不易出错:
// 使用Lamda写法,不会写错字段名,优雅且简单
LambdaQueryWrapper<ProdPersonnel> lambda = new QueryWrapper<ProdPersonnel>()
.lambda()
.eq(ProdPersonnel::getDepartmentId, id)
.eq(ProdPersonnel::getIsDel, Constant.DeleteFlag.COMMON_INT);
List<ProdPersonnel> data = this.list(lambda);
LambdaUpdateWrapper<Object> lambda = new UpdateWrapper<>()
.lambda()
.eq(ProdPersonnel::getDepartmentId, id)
.eq(ProdPersonnel::getIsDel, Constant.DeleteFlag.COMMON_INT)
.set(ProdPersonnel::getName, name);
this.update(lambda);
网友评论