【发布时间】:2015-03-16 09:03:04
【问题描述】:
我有两个实体类:UserConfirmation 和 User,它们是使用以下注释代码的一对一关系:
父/所有者实体 (UserConfirmation):
@OneToOne(mappedBy = "userConfirmation", cascade = CascadeType.ALL)
@JsonManagedReference
private User user;
子实体(用户):
@OneToOne
@JoinColumn(name = "user_confirm_id")
@JsonBackReference
private UserConfirmation userConfirmation;
使用当前的Cascade.ALL,当我删除 UserConfirmation 时,其关联的用户也会被删除,这是我不想要的。我想在删除用户确认后保留用户。
我尝试了以下方法:
在删除 UserConfirmation 之前将用户设置为 null:
userConfirmation.setUser(null);但这会产生 NullPointerException尝试了 Cascade.REMOVE 和 Cascade 上的几乎所有内容,但没有任何效果。
一如既往地感谢您的帮助:)
【问题讨论】:
标签: java hibernate jpa hibernate-mapping cascade