Hibernate的一对多自关联中的级联删除问题 15
我正在开发一个论坛,论坛的父版块和子版块之间是一对多自关联关系,删除一个父版块对象必须级联删除与之关联的子版块对象。我在Hibernate的映射文件中是这样配置的,应该没...
我正在开发一个论坛,论坛的父版块和子版块之间是一对多自关联关系,删除一个父版块对象必须级联删除与之关联的子版块对象。我在Hibernate的映射文件中是这样配置的,应该没错:
<set name="childBoards" cascade="all" outer-join="true">
<key column="PARENTID"/>
<one-to-many class="Board"/>
</set>
<many-to-one class="Board" cascade="none" column="PARENTID" name="parent" not-null="false" outer-join="true"/>
但是就是无法实现一对多级联删除,删除父版块记录之后,子版块记录依然还在,没被删除,这是怎么回事啊?
我已经设置了default-lazy="false"属性了,还是没用。 展开
<set name="childBoards" cascade="all" outer-join="true">
<key column="PARENTID"/>
<one-to-many class="Board"/>
</set>
<many-to-one class="Board" cascade="none" column="PARENTID" name="parent" not-null="false" outer-join="true"/>
但是就是无法实现一对多级联删除,删除父版块记录之后,子版块记录依然还在,没被删除,这是怎么回事啊?
我已经设置了default-lazy="false"属性了,还是没用。 展开
2个回答
展开全部
1)一对多采取了延迟加载策略:lazy="true"默认
2)将多传播持久性(级联)设置为最全面的全部级联(包括孤儿模式):cascade="all-delete-orphan"
3)将维护关系的控制权交给多端:inverse="true"
2)将多传播持久性(级联)设置为最全面的全部级联(包括孤儿模式):cascade="all-delete-orphan"
3)将维护关系的控制权交给多端:inverse="true"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询