1. 程式人生 > >JPA ManyToMany雙向關係

JPA ManyToMany雙向關係

N:M(雙向)

關係維護端
publlic class Student{                                               public class Teacher{

private Set<Teacher> teachers;              private Set<Student> students;

@ManyToMany(cascade=                    @ManyToMany(cascade=
{                                       {
CascadeType.refresh,重新整理                  CascadeType.refresh,重新整理
}                                       }
)                                           )
@JoinTable
( name = "student_teacher" 多對多關係維護表表名稱 //[email protected](name = "teacher_id") 關係被維護端外來鍵定義(關係維護表中的屬性欄位名稱) //JoinColumns = @JoinColums(name = "student_id")關係維護端外來鍵定義(關係維護表中的屬性欄位名稱) ) getTeachers(){} getStudents(){} } } 1
。通過中間表維護關係,雙方都可以作為關係的維護端。 2。如果不設定關係維護表的外來鍵欄位定義,預設為實體中屬性名稱加上"_id",即teachers_id,students_id 3。在雙向的多對多關係中不能設定,級聯刪除。這樣有可能將資料庫表清空掉。