इसे आजमाएं:
public class Professor {
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinTable(name = "ALUNO_PROFESSOR",
joinColumns = @JoinColumn(name = "idProfessor", referencedColumnName = "idProfessor"),
inverseJoinColumns = @JoinColumn(name = "idAluno", referencedColumnName = "idAluno"))
private List<Aluno> alunoList;
}
public class Aluno {
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinTable(name = "ALUNO_PROFESSOR",
joinColumns = @JoinColumn(name = "idAluno", referencedColumnName = "idAluno"),
inverseJoinColumns = @JoinColumn(name = "idProfessor", referencedColumnName = "idProfessor"))
private List<Professor> professorList;
}
यह सुनिश्चित करेगा कि कई-से-अनेक संबंधों के लिए मेटाडेटा दोनों संस्थाओं पर उपलब्ध है और संबंध के दोनों ओर के संचालन दूसरी तरफ कैस्केड किए गए हैं।
मैं FetchType.EAGER
. को बदलने का भी सुझाव देता हूं FetchType.LAZY
. के साथ बेहतर प्रदर्शन के लिए क्योंकि इसमें एक बहुत बड़े डेटासेट को लोड करने की क्षमता है।