当JPA CRUD中不需要时,java抑制级联删除注释函数
我有两个实体父实体和子实体处于双向关系中,如下所示:
@Entity
public class Parent implements Serializable {
@Id
@GeneratedValue
private long id;
@OneToMany(mappedBy = "parent", cascade = CascadeType.REMOVE)
private Set<Child> children;
}
@Entity
public class Child implements Serializable {
@Id
@GeneratedValue
private long id;
@ManyToOne
@JoinColumn
private Parent parent;
}
通过注释,当我在数据库中删除父项时,与之相关的任何子项也将通过级联删除
然而,在有些情况下,父母没有子女;因此,不需要级联删除
我想根据是否需要级联来区分我的删除操作(例如,删除是简单删除还是需要级联的删除)。如果不显式调用Parent来检查子元素是否为null,JPA是否有办法在下面这样的命令中不需要时自动抑制级联注释
this.parentRepository.delete(parentID);
共 (0) 个答案