【问题标题】:How to do a cascade save in hibernate如何在休眠中进行级联保存
【发布时间】:2011-10-09 10:37:11
【问题描述】:

我有对象 A 和 B。

对象A就像

class A{
 Set<B>
}

现在,当我保存 A 时,我希望 A 的 Set&lt;B&gt; 中的所有对象都应自动保存在 DB 中。我该怎么做?

【问题讨论】:

  • 三个原因:1)你的英语不太好,所以很难理解你的问题,2)没有足够的代码来找出问题所在,3)没有那么多人在这个网站上回答 Hibernate 问题。

标签: java hibernate save cascade


【解决方案1】:
// Use the cascade option in your annotation
@OneToMany(cascade = {CascadeType.ALL}, orphanRemoval = true)
public List<FieldEntity> getB() {
    return fields;
}

【讨论】:

【解决方案2】:

如果您通过 EntityManager 工作并使用纯 JPA 注释,来自 Ransom 的问题将有效。但是如果你是直接使用Hibernate,那么你需要使用它自己的注解进行级联。

import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

...

@OneToMany
@Cascade({CascadeType.SAVE_UPDATE, CascadeType.DELETE})
public List<FieldEntity> getB() {
    return fields;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-31
    • 1970-01-01
    • 2019-12-24
    相关资源
    最近更新 更多