gpt4 book ai didi

java - hibernate :级联类型

转载 作者:太空狗 更新时间:2023-10-29 22:50:13 26 4
gpt4 key购买 nike

让我有实体 A 和实体 B。实体 AB@OneToOne 关系。
我接下来要做什么:
如果我删除 A,那么 B 也必须被删除。
如果我删除 B,则 A 不会被删除。

我必须在哪个实体中设置

@OneToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH})  

我必须设置在哪一边

@OneToOne(cascade = {CascadeType.ALL})  

?

最佳答案

从 A 到 B 的级联应该放在类 A 中引用 B 的字段上,从 B 到 A 的级联应该放在引用 的字段上>AB

public class A {
@OneToOne(cascade = {CascadeType.ALL})
B b;
}

应该在 A 类中,因为您希望每个操作都级联到 B

public class B {
@OneToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH})
A a;
}

应该在 B 类中,因为您只希望将某些操作级联到 A

关于java - hibernate :级联类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10551485/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com