Blaze Persistence 跳过 where 表达式中的空参数
Blaze Persistence skip null parameters in where expression
有没有办法跳过 where 表达式中的空参数?假设我有以下代码:
Boolean deleted = null;
var criteriaBuilder = cbf.create(em, MyClass.class)
.where("deleted").eq(deleted);
当 deleted 变量为 null 时,我想跳过对“deleted”的求值。有办法实现吗?
谢谢
euks
这通常是通过有条件地添加谓词来完成的,如下所示:
var criteriaBuilder = cbf.create(em, MyClass.class);
if (deleted != null) {
criteriaBuilder.where("deleted").eq(deleted);
}
有没有办法跳过 where 表达式中的空参数?假设我有以下代码:
Boolean deleted = null;
var criteriaBuilder = cbf.create(em, MyClass.class)
.where("deleted").eq(deleted);
当 deleted 变量为 null 时,我想跳过对“deleted”的求值。有办法实现吗?
谢谢 euks
这通常是通过有条件地添加谓词来完成的,如下所示:
var criteriaBuilder = cbf.create(em, MyClass.class);
if (deleted != null) {
criteriaBuilder.where("deleted").eq(deleted);
}