2012-04-10 3 views

答えて

2

TableAとTableBのPOJOを持ち、それらの間に多対多関係TableCのPOJOを作成することはありません。

表CはONLY表Aと表Bに外部キー制約を持つ2つの列が含まれている場合、あなたは@ManyToMany@JoinTableを使用してそれを達成することができます

@Entity 
public class TableA{ 

    @ManyToMany 
    @JoinTable(
     name = "TableC", 
     joinColumns = {@JoinColumn(name = "TableA_ID")}, 
     inverseJoinColumns = {@JoinColumn(name = "TableB_ID")} 
) 
    private List<TableB> tableB= new ArrayList<TableB>(); 

} 

@Entity 
public class TableB{ 

    @ManyToMany(mappedBy="tableB") 
    private List<TableA> tableA= new ArrayList<TableA>(); 

} 

しかし、表Cは、それ以上の追加の列が含まれている場合他のテーブル(たとえばlast_modified_dateのカラム)に外部キー制約がない場合、それを行うことはできず、テーブルCをPOJOとして宣言し、model the many-to-many association as two one-to-many associations to Table Cと宣言する必要があります。

+0

回答ありがとう@Ken Chan – bhavin