У меня есть отношения @ManyToMany между двумя моими сущностями.Когда я пытаюсь загрузить родителей своими детьми, родители повторяют в ответе полезную нагрузку.Я хочу решить мою проблему с EntityGraphs
.
Вот родитель с аннотацией.
@Entity
@Table(name="Parent_table")
@NamedEntityGraph(
name = "Parent.children",
attributeNodes = @NamedAttributeNode("children"))
public class Parent implements Serializable{
//some extra code
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(
name="join table", joinColumns=@JoinColumn(name="key"),inverseJoinColumns=@JoinColumn(name="key"))
private List<Child> children;
Вот код в хранилище для родителя.
@EntityGraph(value = "Parent.children", type = EntityGraphType.LOAD)
public List<Parent> findAll(Predicate predicate);
У меня много-много отношений между двумя моими сущностями.Но я хочу получить результат как
parent1 {
child1,
child2
}
Но я получаю родителей для каждой комбинации ..
Parent1 {
child1,
child2
}
Parent1 {
child1,
child2
}
там я получаю parent2.
Но что я хочучтобы получить parent1 только один раз, не повторяя.При использовании графа сущностей.