Hibernate映射,具有多对多关系表的实体

问题描述:

我得到了两个表之间的多对多关系。我使用注释@ManyToMany来映射它。Hibernate映射,具有多对多关系表的实体

表1 --->关系表--->表2

使用Hibernate我没有创建关系表,所以我有任何的实体。

实体1(表1)--->实体2(表2)

但我的问题是,我还有一个表,我必须这样做3TH表和关系之间的关系之前的表和我没有任何实体之间的关系。

表3 --->关系表

我的意思是3TH表得到了与我之前使用的关系表的外键...

我怎么可以成就呢?对不起,我的英语

谢谢

这里是一个例子。 想象一下,我们对我们的产品和类别 你有2个实体产品和类别

使用Hibernate的代码优先方法,该实体将是这样的:

@Entity 
@Table(name = "products") 
public class Product implements Serializable { 
private Long id; 
.... 

@ManyToMany 
@JoinTable(name = "categories_products", 
joinColumns = @JoinColumn(name = "category_id", 
referencedColumnName = "id"), 
inverseJoinColumns = @JoinColumn(name = "product_id", 
referencedColumnName = "id")) 
private Set<Category> categories; 
... 

这里是代码

代码
public class Category { 
private Long id; 
private String name; 
... 
} 

通过使用注释@JoinTable,将创建第三个表格,并使用以下约束。它会有category_id,它指向产品id的Categories id和product_id。