2012-07-13 114 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