【问题标题】:Blaze Persistence skip null parameters in where expressionBlaze Persistence 在 where 表达式中跳过空参数
【发布时间】:2021-04-28 07:47:29
【问题描述】:

有没有办法在 where 表达式中跳过空参数?假设我有以下代码:

Boolean deleted = null;
var criteriaBuilder = cbf.create(em, MyClass.class)
                 .where("deleted").eq(deleted);

当删除的变量为空时,我想跳过对“已删除”的评估。有没有办法做到这一点?

谢谢 尤克斯

【问题讨论】:

    标签: blaze-persistence


    【解决方案1】:

    这通常通过有条件地添加谓词来完成,如下所示:

    var criteriaBuilder = cbf.create(em, MyClass.class);
    if (deleted != null) {
        criteriaBuilder.where("deleted").eq(deleted);
    }
    

    【讨论】:

    • 谢谢。我用过这个策略。
    • 你好@Christian Beikov。你能检查一下这个问题吗? stackoverflow.com/questions/69253704/… 即使我使用了分页,我如何才能获得此查询的总数?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多