高分请教关于hibernate的cascade="delete-orphan"的问题

yangfeitarena 2009-09-02 09:43:17
在一对多的关联中,
1> 一的一端配置set时,加上cascade="delete-orphan",提示说映射文件不能解析,难道delete-orphan不能用?
2>cascade="all-delete-orphan"和cascade="delete"效果怎么是一样的啊,带上orphan到底起什么作用?怎么能够表现出来他的作用啊?
...全文
397 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dl_yang 2010-11-23
  • 打赏
  • 举报
回复
delete:当通过Session的delete()方法删除当前对象时,级联删除所有关联的对象。

delete-orphan:删除所有和当前对象解除关联关系的对象。

all-delete-orphan:包含了delete和delete-orphan的行为。

恩对
legu1 2009-09-02
  • 打赏
  • 举报
回复
delete:当通过Session的delete()方法删除当前对象时,级联删除所有关联的对象。

delete-orphan:删除所有和当前对象解除关联关系的对象。

all-delete-orphan:包含了delete和delete-orphan的行为。
zhao_tk 2009-09-02
  • 打赏
  • 举报
回复
在子对象失去父对象的引用时,如果不写"delete-orphan",子对象不会被删除.
xiaowei3856 2009-09-02
  • 打赏
  • 举报
回复
delete当通过Session的Delete()方法删除当前对象时,同时会删除关联的所有对象。
  
all 包含save-update以及delete的行为,此外对当前对象进行Evict()或者Lock()方法时会对关联的对象进行同样的操作。
    
delete-orphan 删除所有和当前对象解除关联关系的对象。     
  
all-delete-orphan 包含all和delete-orphan的行为。
  
Johnson_Hong 2009-09-02
  • 打赏
  • 举报
回复
假设你的set inverse=true
将set里的一个元素remove后,然后save“一”这一端的这个主对象


casecade="all"那么不会发出delete语句
而casecade="all-delete-orpan"则会发出语句删除这个被解除关联的对象
lcj_up 2009-09-02
  • 打赏
  • 举报
回复
cascade是级联关系。
“delete”值只有在删除的时候才关联。
xuexijava 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 aaron0203 的回复:]
delete:当通过Session的delete()方法删除当前对象时,级联删除所有关联的对象。

delete-orphan:删除所有和当前对象解除关联关系的对象。

all-delete-orphan:包含了delete和delete-orphan的行为。

[/Quote]
UP
aaron0203 2009-09-02
  • 打赏
  • 举报
回复
delete:当通过Session的delete()方法删除当前对象时,级联删除所有关联的对象。

delete-orphan:删除所有和当前对象解除关联关系的对象。

all-delete-orphan:包含了delete和delete-orphan的行为。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧