gpt4 book ai didi

java - hibernate/JPA : Remove from multiple parents when child is deleted

转载 作者:行者123 更新时间:2023-11-29 04:21:07 24 4
gpt4 key购买 nike

我有一个具体问题,我不知道 Hibernate 是否可以自动解决:

在我们的领域模型中,我们有许多双向的一对多关系,其中“ child ”可能是许多 parent 的 child 。

例子:

public Class Role {

@ManyToOne(targetEntity = Actor.class, fetch = FetchType.LAZY)
private Actor actor;

@ManyToOne(targetEntity = Contact.class, fetch = FetchType.LAZY)
private Contact contact;
}

public class Actor {

@OneToMany(targetEntity = Role.class, fetch = FetchType.LAZY)
private List<Role> roles;
}
public class Contact {

@OneToMany(targetEntity = Role.class, fetch = FetchType.LAZY)
private List<Role> roles;
}

我的问题是,当通过调用 entityManager.remove(node) 删除 Role - 节点时,我同时想从所有映射列表中删除 Role -refrence,以便 db字段被适本地清空,同时保留 parent 而不是在他们各自的列表上调用删除

这可能吗,或者这是 jpa/hibernate 的默认行为?

最佳答案

您应该明确地迭代联系人和参与者对象的角色列表并删除适当的角色对象。这是唯一的选择。因为它有时不会自动删除(大部分时间)。

关于java - hibernate/JPA : Remove from multiple parents when child is deleted,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49105477/

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