2012-07-13 115 views
2

主要有兩種@Entity類反映了這些表:JPA參考表映射

TableA {id,name} 
TableB {id,name} 

而且一個參考表

TableC {tableA.id,tableB.id} 

的問題是:如何在TableA的實體字段映射與@OneToMany realation到TableB對象列表:

@OneToMany 
?????????? 
private List<TableBEntity> tableBItems; 

回答

3

如果你真的是一個一對多(這意味着一個給tableB.id出現在TableC最多一次),然後映射如下:

@OneToMany 
@JoinTable(name = "TableC", 
      joinColumns = @JoinColumn(name = "TABLE_A_ID"), 
      inverseJoinColumns = @JoinColumn(name = "TABLE_B_ID")) 
private List<TableBEntity> tableBItems; 

否則,你有什麼實際上是一個多對多,並映射是相同的,但@OneToMany必須替換爲@ManyToMany