无法删除子实体 JPA

时间:2021-06-25 02:40:00

标签: java spring jpa spring-data-jpa

我有 JPA 实体这样的关系:

public class SuperParent {

  @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
  @JoinColumn(name = "parent_id")
  @Builder.Default
  private Set<Parent> parents = new HashSet<>();

  @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
  @JoinColumn(name = "super_parent_id")
  private Set<Child> children = new HashSet<>();
}
public class Parent {

    @OneToMany(mappedBy= "parent" cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
    @Builder.Default
    private Set<Child> children = new HashSet<>();

    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "super_parent_id")
    private SuperParent superParent;

}
public class Child {
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "parent_id")
    private Parent parent;

    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "super_parent_id")
    private SuperParent superParent;
}

当我调用 childRepository.deleteById() 时,删除操作不会删除子实体,我不知道是什么问题。

0 个答案:

没有答案
相关问题