我在使用带有以下映射的JPA删除孤立节点时遇到问题
@OneToMany (cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "owner")
private List<Bikes> bikes;
Run Code Online (Sandbox Code Playgroud)
我遇到了挂在数据库周围的孤立角色的问题.
我可以使用注释org.hibernate.annotations.CascadeHibernate特定标记,但显然我不想将我的解决方案绑定到Hibernate实现.
编辑:似乎JPA 2.0将包括对此的支持.
假设我有如下的单向 @ManyToOne关系:
@Entity
public class Parent implements Serializable {
@Id
@GeneratedValue
private long id;
}
@Entity
public class Child implements Serializable {
@Id
@GeneratedValue
private long id;
@ManyToOne
@JoinColumn
private Parent parent;
}
Run Code Online (Sandbox Code Playgroud)
如果我有一个父P和子C 1 ... C n引用回P,那么在JPA中有一个干净漂亮的方法可以在删除P时自动删除子C 1 ... C n(即entityManager.remove(P))?
我正在寻找的是类似于ON DELETE CASCADESQL 的功能.