我的数据模型由学校和学生组成。学生对他们所属的学校有FK。 我不明白为什么集合包含重复项,即Joe,Joe,Mary,Mary,Tom,Tom等 由Hibernate生成的SQL查询是正确的,并且不会返回重复项。 我可以实现一个黑客过滤出重复,但我还没有准备好与一个破碎的窗户生活;) 我试图粘贴下面的相关代码段。任何帮助非常感谢!休眠/ JPA:子集合中的副本
// SchoolJpa
@OneToMany (
mappedBy = "school",
targetEntity = StudentJpa.class,
fetch = FetchType.LAZY,
cascade = CascadeType.ALL
)
@Override
public List<Student> getStudentsInternal() {
return super.getStudentsInternal();
}
// SchoolImpl
private List<Student> students = new ArrayList<Student>();
public List<Student> getStudents() {
return Collections.unmodifiableList(students);
}
public List<Student> getStudentsInternal() {
return students;
}
public void setStudentsInternal(List<Students> students) {
this.students = students;
}
您用于检索对象的特定代码是什么? Hibernate有一些已知的问题,某些类型的HQL会触发像这样的重复。 – Jherico 2010-07-14 19:15:54