【发布时间】:2011-12-23 14:43:49
【问题描述】:
我正在将一些复杂的 JPQL 查询移植到大型 Hibernate/JPA2 应用程序中以使用 QueryDSL 2.3.0,但我被困在了一个。
我的Client 实体包含
@ManyToMany
private List<Group> groups;
我现有的查询片段是
EXISTS(SELECT g FROM Group g WHERE g MEMBER OF slr.groups AND
UPPER(g.description) LIKE :group)
QueryDSL 代码生成在我的 QClient 类中生成了以下内容:
public final SimplePath<java.util.List<Group>> groups =
createSimple("groups", java.util.List.class);
使用SimplePath 的代码生成不允许我使用in 或contains 方法来查询成员资格。我想我需要一个CollectionPath。有没有办法注释 Client 类,以便 QueryDSL 使用正确的类型来查询集合?
【问题讨论】:
-
我在尝试 QueryDSL 时一直在使用 Eclipse,一旦我习惯了这个工具,就计划迁移到 Maven。找到这个可能的错误后,我将尝试使用 Maven 来处理构建。
标签: java hibernate jpa querydsl