Моя модель данных сделана из Школ и Студентов. У студентов есть FK в Школу, которой они принадлежат. Я не понимаю, почему набор содержит дубликаты, т.е. Joe, Joe, Mary, Mary, Tom, Tom, и т.д. SQL-запрос, сгенерированный, в спящем режиме, корректно и не возвращает дубликаты. Я мог реализовать взлом для отфильтровывания дубликатов, но я не готов жить с разбитым окном все же ;) Я попытался вставить соответствующие части кода ниже. Любая справка значительно ценится!
// 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;
}
Трудно сказать по куску кода, но:
equals
/hashCode
(я подозреваю проблему на этом уровне). Вообще, можете ли вы показать все отображения? Я не совсем понимаю, почему у вас несколько геттеров и сеттеров на одно и то же поле.