有3个表Order
表Product
表OrderProductMapping
表
只有2个实体分支:Order
和Product
Order
和Product
表共享many-tomany
个关系。这意味着1个订单可以包含许多产品,而一个产品可以属于许多订单。
为了映射这个,有第三个名为OrderProductMapping
以下是order.hbm
文件
<set name="product" table="OrderProductMapping">
<key column="orderId"/>
<many-to-many class="Product">
<column name="productId" />
</many-to-many>
</set>
以下是product.hbm
文件
<set name="order" table="OrderProductMapping" inverse="true">
<key>
<column name="orderId"/>
</key>
<many-to-many class="Product">
<column name="productId" />
</many-to-many>
</set>
现在我需要在映射表中引入一个新列如何继续?任何帮助或指针都会很棒。
答案 0 :(得分:0)
创建一个新的Entity OrderProductMapping,然后将@ManytoMany替换为双向@OneToMany Order&gt; OrderProductMapping&lt;产品
另见:
Hibernate Best Practices: Avoiding Many-To-Many and 'exotic' relationships