通过休眠删除实体

时间:2019-04-09 22:30:02

标签: hibernate

我在尝试删除项目中的实体时遇到了一些问题。

为了解释这种情况,我有两个实体“父级”和“子级”。

请参见下面的两个类:

@Entity
private class Parent {
  private long id;

  @OneToMany(orphanRemoval=true)
  private Map<Long, Child> children;

}

@Entity
private class Child {
  private long id;

  @ManyToOne
  private Parent parent;
}

我曾尝试使用parentDAO删除一个子实体。

Parent parent = this.parentDAO.findById(currParentId);
Child child = this.childDAO.findById(currChildId);
parent.getChildren().remove(child.getId());
parent.save() 

我希望此代码有效(将孩子从父列表中删除,然后保存将删除孤儿)。另外,我所有的代码都用@Transactional注释。

但是我有一个休眠异常:HibernateException:无法实例化代理实例。

您能告诉我为什么会有这个问题,如何解决?

0 个答案:

没有答案