Hibernate或Grails-需要了解级联的帮助吗

Hibernate或Grails-需要了解级联的帮助吗,hibernate,grails,cascade,Hibernate,Grails,Cascade,我是一名大学生,没有很多关于Hibernate或Grails的经验。我的主要问题主要是关于级联在哪里应用,它是否只应用于有数据库条目的属性,或者其他方面 例如,如果我有两个域A和B。。。其中,B有一个用A填充的hastable。如果删除A,是否必须手动删除该特定A项的B中的哈希表项?如果没有,我应该设置什么行为来删除它 附:我的第一篇帖子。。。如果没有足够的细节,我很抱歉,但我确实没有太多的经验来正确描述我的问题。对于一对多关系,默认策略是保存和更新。对于delete,您必须使用belongsT

我是一名大学生,没有很多关于Hibernate或Grails的经验。我的主要问题主要是关于级联在哪里应用,它是否只应用于有数据库条目的属性,或者其他方面

例如,如果我有两个域A和B。。。其中,B有一个用A填充的hastable。如果删除A,是否必须手动删除该特定A项的B中的哈希表项?如果没有,我应该设置什么行为来删除它


附:我的第一篇帖子。。。如果没有足够的细节,我很抱歉,但我确实没有太多的经验来正确描述我的问题。

对于一对多关系,默认策略是保存和更新。对于delete,您必须使用belongsTo子句

有关以下文件中的详细信息,请参见第5.2.1.2节

有关详细信息,请参阅

我的主要问题主要是关于级联在哪里应用,它是否只应用于有数据库条目的属性,或者其他方面

级联允许“传播”操作,如持久化、合并、保存更新等沿着实体之间的关联。因此,如果A与B有关联,则可以将A上的操作级联到B上

例如,如果我有两个域A和B。。。其中,B有一个用A填充的哈希表。如果删除A,是否必须手动删除该特定A项的B中的哈希表项

正如我所说,级联是沿着一个关联进行的。在这里,您描述了从B到A的关联,因此没有任何东西会从A到B级联。现在,如果此关联是双向的(即,如果您可以从A导航到B),那么您将能够从A到B级联操作

但您需要了解,级联本身不会影响内存中的内容,从集合中删除A必须由您完成

另见
  • 在Hibernate参考文档中

您好,谢谢您的回复,我已经阅读了您发布的文档。从我所读到的,我将尝试给出一个更详细的例子。。。在圣杯中有许多[]和属于[]。。域A有一个belongTo[b:b],而域b有一个hasMany[A:A],而b有级联:“delete-orphan”。这是否意味着:如果我现在删除A,B中的哈希表保持A的轨迹将不受影响,但在我删除A B的瞬间,我也将删除A,因为它们现在是“孤立”的,对吗?