【发布时间】:2012-01-11 11:20:34
【问题描述】:
我正在尝试使用 Hibernate 获取对象集合,但我不确定如何制定查询,因为我不能(或不知道如何)从我想要返回的对象开始。
我有 3 个课程:
Participant
Event
EventRegistration
它们之间的连接是通过EventRegistration建立的,它与Event是多对一的关系,与Participant是多对多的关系。它看起来像这样:
EventRegistration.participants
EventRegistration.event
我想使用 HSQL 或 Criteria API 编写一个查询,以获取特定事件的所有参与者。
基本上看起来或多或少像:
from EventRegistration er inner join er.event as ev inner join er.participants as p where ev.id=?
无论如何,上面的查询返回一个 Object 数组,其中包含每个对象之一(如 Object[]{EventRegistration, Event, Participant}。
我确实尝试在网上找到如何执行此操作,但所有示例都从返回的对象开始。不幸的是,我无法从 Participant 对象开始,因为它与 EventRegistration 或 Event 没有直接联系。
知道如何让它只返回参与者列表吗?
谢谢。
【问题讨论】:
-
这就是完整的声明。 JB Nizet 的答案正是我想要的。谢谢
标签: hibernate many-to-many hql