0

我在 NaturalPerson 和 Client 实体之间有 2-way 关联,我想在持久化 Client 的同时保持 NaturalPerson ,并且在持久化 NaturalPerson 时反向保持 Client 。为了实现这一点,我在客户和 NaturalPerson 之间建立了一对一的关系,其中 NaturalPerson 是拥有方,而客户是反方。接下来,我在两侧添加了 {CascadeType.PERSIST, CascadeType.REMOVE} 的级联属性。这就是问题所在,即我遇到了这样的错误

 non-transient entity has a null id

当我首先创建 NaturalPerson 实例和下一个 Client 实例,然后在 Client 上设置此 NaturalPerson(在反面设置所有者)时,会发生此错误。但是,当我以相反的方向执行此操作时,即首先在 NaturalPerson 上设置客户端,而不是仅保留客户端(反面),而不是创建这两个相关实体的单元测试通过良好(一切似乎都正常)

4

0 回答 0