Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

JPA banyak ke banyak relasi tidak dimasukkan ke dalam tabel yang dihasilkan

Coba ini:

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;
}

Ini akan memastikan bahwa metadata untuk hubungan banyak ke banyak tersedia di kedua entitas dan bahwa operasi di kedua sisi hubungan diturunkan ke sisi lain.

Saya juga menyarankan untuk mengganti FetchType.EAGER dengan FetchType.LAZY untuk kinerja yang lebih baik karena ini berpotensi memuat kumpulan data yang sangat besar.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sisipan batch menggunakan SQL Asli di Hibernate

  2. mysql bergabung dengan tabel kueri 2 nilai

  3. Masalah penyisipan Karakter MySQL UTF-8

  4. Masukkan catatan yang hilang dari satu tabel ke tabel lain menggunakan mysql

  5. MySQL Gabung Dimana Tidak Ada