1

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

因此,例如,如果我有 2 个域 A 和 B ......其中 B 有充满 A 的 hastable。如果我删除 A,我是否必须手动删除该特定 A 条目的 B 中的哈希表条目?如果不是,我应该设置什么行为才能将其删除?

PS我的第一篇文章......如果没有足够的细节,我很抱歉,但我真的没有太多经验来正确描述我的问题......

4

2 回答 2

0

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

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

有关详细信息,请参见http://grails.org/doc/1.0.x/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html

于 2010-07-14T18:03:57.040 回答
0

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

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

例如,如果我有 2 个域 A 和 B...,其中 B 的哈希表中填充了 A。如果我删除 A,我是否必须手动删除该特定 A 条目的 B 中的哈希表条目?

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

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

也可以看看

于 2010-07-14T19:48:41.553 回答