QueryDSL以获取另一个实体集合中的任何实体 [英] QueryDSL to get any entities in a collection of another entity
本文介绍了QueryDSL以获取另一个实体集合中的任何实体的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在将JPA与Hibernate和QueryDSL(v.4.0.5)一起使用.我有这个实体:
I'm using JPA with Hibernate and QueryDSL (v.4.0.5). I have this entity:
package com.test.model.entity;
@Entity
public class Article {
@Id
private Long id;
@ManyToMany(fetch = LAZY, cascade = DETACH)
private Set<Tag> tags;
}
如何找到与给定的一组Tag
相匹配的所有文章?
我想我应该开始如下:
How can I find all the articles matching a given set of Tag
s?
I think I should start as follows:
public BooleanExpression hasTag(Set<Tag> tags){
final QArticle article = QArticle.article;
return article.tags.any().eqAny(ce);
}
其中ce
应该是CollectionExpression
.
显然我不知道该如何设置.
where ce
should be a CollectionExpression
.
Clearly I have no idea how to set this.
有解决方案吗?
推荐答案
您尝试过
public BooleanExpression hasTag(Set<Tag> tags){
QArticle article = QArticle.article;
return article.tags.any().in(tags);
}
这篇关于QueryDSL以获取另一个实体集合中的任何实体的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文