我注意到 Hibernate 不允许删除一对多关系中的实体。
我有两个表(和实体),公司和员工。
我想使用以下代码删除员工:
..
company.getEmployees().remove(myEmployee); //employees is a collection in Company, it is mapped as a one-to-many relationship (@OneToMany)
sessionFactory.getCurrentSession().merge(company);
您知道如何强制删除吗?或者至少得到一个异常?
最佳答案
是的,默认情况下不删除。但是您可以将 @OneToMany
关系映射到 orphanRemoval = true attribute为了被自动删除:
@OneToMany(cascade=CascadeType.ALL, orphanRemoval=true)
public Set<Employee> getEmployees() { return employees; }
关于java - Hibernate:如何从 "many"一侧删除 "one"一侧的一对多关系中的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15900228/