【发布时间】:2012-09-24 19:25:32
【问题描述】:
我的模特:
@Entity
class Person {
@Id
long id;
@OneToMany
Set<Employment> employments = new HashSet<Employment>();
}
@Entity
class Employment {
@Id
long id;
@ManyToOne
Company company;
Date from;
Date until;
}
这是Person 和Company 之间的关联,受时间间隔限制。
我正在寻找一个 JPA 条件查询来选择所有 Persons 及其在给定时间的工作。
预期结果是一个包含所有人的List<Person>,其中每个Person 的集合employments 仅包含符合特定条件的工作(或根本没有工作)。 p>
@Where 不是一个明智的方法,因为就业的过滤标准是可变的,例如我想在任何给定时间选择一个人的所有工作。
这甚至是合理的做法吗?任何建议如何以不同的方式做到这一点?
【问题讨论】:
标签: jpa jpa-2.0 criteria-api