使用QueryDSL,如何在子项目符合所有条件的集合上创建表达式?

凯西

假设我有一个Appointment表和一个Person表,其中一个Appointment有很多Persons。

如果我想查找列表中至少包含一个人的所有约会我将执行以下操作:

Collection<Person> personsList = getInterestedPersons();
BooleanExpresssion expr = appointment.persons.any().in(personsList)

但是,我真正想要的是找到所有名单中所有人员的约会。

那么,我该如何构造一个BooleanExpression过滤器,使我可以过滤所有拥有所有人员的约会?

注意:我必须创建一个BooleanExprsesion,因为这是较大的Appointment通用过滤器的一部分,所有BooleanExpression都将and()在一起。

另一个要注意的是,我没有找到具有这些人员的约会,而至少只有列表中的所有那些。

对不起,杰克逊

在这种情况下,我想以下应该起作用:

BooleanBuilder personClause = new BooleanBuilder();
for (Person person : personList)
{
    personClause.and(appointment.persons.contains(person));
}
query.where(personClause); // to add the clause

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在php中找到带有条件的xpath表达式的数量?

在 Access 中对字段使用数据验证时,如何使表达式有条件?

SBT使用集合创建子项目

按类型从表达式中提取所有条件

有条件替换的正则表达式

有条件的正则表达式替换

有条件边界的正则表达式?

有条件的PHP正则表达式

有条件的Java正则表达式

使用可变字符串正则表达式有条件删除

熊猫使用正则表达式有条件地更改单元格

使用vbscript正则表达式有条件替换日期

如何根据选定的下拉按钮项目有条件地在列中创建文本子项?

正则表达式:从字符串中提取所有有条件的子字符串

如何删除不符合所有条件的所有行(每个组)?

如何在gradle中的所有子项目之前先执行根项目

如果所有条件都符合foreach

播放符合所有条件的框架路线

如何在MongoDB集合中的所有子文档上有条件地设置新字段

使用Angular表达式有条件地将字符串添加到HTML

使用带有条件表达式的 ngStyle 清除背景图像的不安全样式值

使用正则表达式,有条件地替换为$ 1或空字符串

使用match..with有条件地将值插入序列表达式的最佳方法?

如何在Maven中创建多模块项目?这样子项目的所有代码库都可以放在父项目中

如何读取文本文件并打印符合所有条件的指定行?

如何过滤Google表格中的数据并包含仅符合所有条件的结果?

如何获得符合mongodb中字段所有条件的用户?

如何在sbt shell中为所有子项目设置值?

Javascript中带有条件的正则表达式错误->无效的正则表达式