var orders=workflowOrderMapper.selectList(Wrappers.<WorkflowOrder>lambdaQuery() .in(WorkflowOrder::getObjectId, ids) .eq(WorkflowOrder::getObjectType, 1) .eq(WorkflowOrder::getStatus, MyEnums.WORKFLOW_ORDER___STATUS_ENUM.已完成 .toCode() ) ); 如果in条件中list为null,会发生异常,如何防止这个问题,为空就不判断in语句
时间: 2023-12-28 20:04:55 浏览: 62
Azure.Data.Wrappers:简化了Azure存储
可以在代码中增加一个判断条件,判断list是否为null或者是否为空,如果为空则不加入in条件,可以使用如下代码:
```
List<Object> ids = ...; // 假设ids是一个List
LambdaQueryWrapper<WorkflowOrder> queryWrapper = Wrappers.<WorkflowOrder>lambdaQuery()
.eq(WorkflowOrder::getObjectType, 1)
.eq(WorkflowOrder::getStatus, MyEnums.WORKFLOW_ORDER___STATUS_ENUM.已完成.toCode());
if (ids != null && !ids.isEmpty()) {
queryWrapper.in(WorkflowOrder::getObjectId, ids);
}
List<WorkflowOrder> orders = workflowOrderMapper.selectList(queryWrapper);
```
这样就可以避免当list为null或者为空时,in语句导致的异常。
阅读全文