我有一个要更新的 java 对象。我使用 SaveOrUpdate 方法来做到这一点。它可以很好地更新子项,但我的要求存在问题。
因为如果删除一个子项,我需要从数据库中删除一个子项。
请问有人有好主意来实现这个吗?
例如:-
项目与人有一对多的关系。
项目有一个属性,例如,
class Project {
long id;
Set<People> people;
......
}
public void updateProject(Project project) {
try {
getCurrentSession().saveOrUpdate(project);
} catch (Exception ex) {
logger.error(ex);
}
项目对象包含人员设置,但从中删除了一些人员 ID。
我需要更新项目并删除不需要的人员 ID
谢谢
最佳答案
我假设您已在项目实体上启用级联,所以我的猜测是您需要将 orphanRemoval 属性添加到关系中。 您的案例示例如下:
@OneToMany(cascade={CascadeType.ALL}, orphanRemoval=true)
关于java - Hibernate删除和更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17917433/