【发布时间】:2012-01-23 17:12:07
【问题描述】:
我继承了一个代码库,几乎所有关系都有以下注释:
@OneToMany(fetch = FetchType.LAZY, cascade = { CascadeType.REMOVE }, mappedBy = "someThing")
@OnDelete(action = OnDeleteAction.CASCADE)
现在我无法理解 @OnDelete 首先做了什么。 Hibernate: OnDelete vs cascade=CascadeType.REMOVE 很有趣,但不幸的是没有任何答案,@OnDelete 的 JavaDoc 特别没有价值。
从其他问题看来,OnDelete 注释以某种方式让 DB 执行级联,而 @OneToMany 上的级联指令让 ORM 执行此操作,但将它们一起使用的目的是什么?
@OneToMany 的 cascade 指令真的不允许 ORM 实现生成基于 DB 的级联吗?
【问题讨论】:
标签: java hibernate jpa jpa-2.0