0
我试图弄清楚这个映射,不知何故它只是逃避我。这很刺激,因为它看起来应该是一个普通的情况。无法找出与连接表的一对多双向关联
我有一个基本的父类和子类,它们之间有一个连接表。 Child类依赖于Parent:如果Child从Parent移除,则Child也应该被删除。 Hibernate文档说这是通过指定cascade =“all,delete-orphan”来工作的。
但架构不会允许它。如果我使用<一对多>,我不能指定一个列,并且连接不起作用。如果我使用每个Hibernate文档的<多对多unique =“true”>,我无法指定级联。
这里是我现在,从Hibernate docs采取:
<class name="Parent" table="parent_table">
<id name="id" column="id">
<generator class="assigned"/>
</id>
<property name="name" type="string"/>
<list table="my_join_table" name="children">
<key column="parent_id"/>
<list-index column="idx">
<!-- how do I put a cascade on this!? -->
<many-to-many column="child_id"
class="Child"
unique="true"/>
</list>
</class>
<class name="Child" table="child_table">
<id name="id" column="id">
<generator class="assigned"/>
</id>
<property name="name" type="string"/>
<join table="my_join_table" inverse="true" optional="false">
<key column="child_id"/>
<many-to-one name="parent" column="parent_id" not-null="true"/>
</join>
</class>