gpt4 book ai didi

java - 一对多关系中的子项不会在 JPA 中删除

转载 作者:行者123 更新时间:2023-11-30 06:19:27 24 4
gpt4 key购买 nike

我有一个名为 A 的实体,它与另一个名为 B 的实体具有一对多关系。

答:

@OneToMany(mappedBy = "a", fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true)
public List<B> getb() {
return b;
}

B:

@ManyToOne
@JoinColumn(nullable = false, name = "a_id", referencedColumnName = "id", foreignKey = @ForeignKey(name = "sample"))
public A geta() {
return a;
}

我想删除“a”中的所有“b”,所以:

A a = entityManager.find(A.class, id);
a.getB().clear();
entityManager.merge(a);

但子进程不会删除。为什么?

最佳答案

尝试使用带有删除语句的entityManager:

em.remove(getB());

关于java - 一对多关系中的子项不会在 JPA 中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48502246/

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