【问题标题】:NonUniqueObjectException when persist object持久对象时出现 NonUniqueObjectException
【发布时间】:2012-03-31 19:45:43
【问题描述】:

当我使用 JPA 持久化一个对象时,我得到 NonUniqueObjectException

我持久化的对象,还有其他对象,在某些情况下,这些对象具有相同的 id。

在已经保存在数据库中的对象中进行合并是可能的,但我只能在一个对象上进行持久化(该对象包含所有信息)

如果我的 id 已经保存在 MySQL 数据库中,我可以在我的 id 上添加任何注释以进行合并?

【问题讨论】:

    标签: java mysql hibernate persistence


    【解决方案1】:

    使用entityManager.merge(..) 或将id 字段留空。否则,hibernate 将检查数据库中是否存在具有相同 id 的实体,如果找到,则会失败。

    【讨论】:

    • 我曾尝试使用 entityManager.merge 但我收到错误消息,因为休眠没有我的一个具有指定 ID 的对象。我不知道这是什么原因,因为那时我没有在我的数据库中保存任何内容,而且正常休眠找不到 ir
    • 我将我的级联类型更改为合并并且知道它正在工作,感谢帮助我解决我的问题
    猜你喜欢
    • 1970-01-01
    • 2014-11-13
    • 2012-10-24
    • 2020-04-26
    • 2012-05-08
    • 2011-07-26
    • 2021-05-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多