请教一个hibernate多重关系的经典问题!!
有三张表,大致内容如下:
BigType
bt_id|bt_name
1 | 图书
SmallType
st_id|st_name|bt_id
11 | 计算机 | 1
Goods
g_id|g_name_|st_id
111| java | 11
我是hibernate配置文件是这样写的,大概内容:
BigType.hbm
XML code
<set name="stypes" order-by="st_id" lazy="false" inverse="true" cascade="all">
<key column="bt_id" />
<one-to-many class="com.joey.supershop.po.Stype"/>
</set>
SmallType.hbm
XML code
<set name="manygoods" order-by="id" lazy="false" inverse="true" cascade="all">
<key column="st_id" />
<one-to-many class="com.joey.supershop.po.Goods"/>
</set>
Goods.hbm
XML code
<many-to-one name="stype" column="st_id" lazy="false"/>
现在说我的问题:
我的程序在删除“图书”这个实体时,结果正常,其子类别“计算机”以及“计算机”下的“java” 都被删除。但是在删除“计算机”时出现异常“deleted object would be re-saved by cascade” 上网搜的答案都是两级关系的解决方法,请问各位有没有更好的办法?
------解决方案--------------------