Hibernate:在连接表中添加一个新列

时间:2013-10-10 13:15:32

标签: hibernate many-to-many

有3个表OrderProductOrderProductMapping表 只有2个实体分支:OrderProduct OrderProduct表共享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>

现在我需要在映射表中引入一个新列如何继续?任何帮助或指针都会很棒。

1 个答案:

答案 0 :(得分:0)

创建一个新的Entity OrderProductMapping,然后将@ManytoMany替换为双向@OneToMany Order&gt; OrderProductMapping&lt;产品

另见:

Hibernate Best Practices: Avoiding Many-To-Many and 'exotic' relationships