Java JPA/Hibernate-删除子级删除父级(从同一表中)

Java JPA/Hibernate-删除子级删除父级(从同一表中),java,hibernate,jpa,many-to-one,hibernate-onetomany,Java,Hibernate,Jpa,Many To One,Hibernate Onetomany,我有一个类注释(见下文),其中一些注释对象属于父注释。 到目前为止,当我删除父注释时,子注释也会被删除(正如预期的那样),但问题出现在删除子注释时,因为父注释也会被删除。 我猜问题来自于类中使用的JPA配置。 你知道如何在不影响父行的情况下删除子行吗 public class Comment { @Column private String text; @ManyToOne(cascade={CascadeType.ALL}) priva

我有一个类注释(见下文),其中一些注释对象属于父注释。 到目前为止,当我删除父注释时,子注释也会被删除(正如预期的那样),但问题出现在删除子注释时,因为父注释也会被删除。 我猜问题来自于类中使用的JPA配置。 你知道如何在不影响父行的情况下删除子行吗

 public class Comment {
   @Column  
   private String text;             

   @ManyToOne(cascade={CascadeType.ALL})
   private Comment parent;

   @OneToMany(cascade={CascadeType.ALL}, mappedBy="parent")
   private Set<Comment> childs = new HashSet<Comment>();
}
公共类注释{
@纵队
私有字符串文本;
@manytone(cascade={CascadeType.ALL})
私人评论家长;
@OneToMany(cascade={CascadeType.ALL},mappedBy=“parent”)
private Set childs=new HashSet();
}

干杯

从父级映射中删除
cascade={CascadeType.ALL}

公共类注释{
@纵队
私有字符串文本;
@许多酮
私人评论家长;
@OneToMany(cascade=CascadeType.ALL,mappedBy=“parent”)//或orphanRemoving=true
private Set childs=new HashSet();
}

从父级映射中删除
cascade={CascadeType.ALL}

公共类注释{
@纵队
私有字符串文本;
@许多酮
私人评论家长;
@OneToMany(cascade=CascadeType.ALL,mappedBy=“parent”)//或orphanRemoving=true
private Set childs=new HashSet();
}