gpt4 book ai didi

hibernate - org.hibernate.NonUniqueObjectException

转载 作者:行者123 更新时间:2023-11-29 11:43:58 25 4
gpt4 key购买 nike

当我想从数据库中删除对象时出现错误。错误是:

org.hibernate.NonUniqueObjectException: a different object with the same identifier value was already associated with the session: [com.cartif.database.ApplicationField#asd]

要删除我做的对象:

public static void delete(Object o){
if(session == null) createSession();
Transaction tx = session.beginTransaction();
tx.begin();
session.delete(o);
tx.commit();
}

当我用一个对象调用这个方法时,我得到了错误。如果我调试应用程序,则会在 tx.begin(); 中抛出异常。行。

在数据库中,这个对象是唯一的,如我在列中所示:

         name                   deviceid
"asd" 1
"ElectricalConsumption" 1
"Energy" 1

为什么会这样?

提前致谢!

最佳答案

NonUniqueObjectException 当已经有一个对象已经与 session 关联并且其 ID(主键)与您试图与 session 关联的对象相同时,将抛出 NonUniqueObjectException。

这通常与删除方法本身无关,而与调用删除的上下文有更多关系

检查调用删除的地方。检查调用删除的地方是否有任何可能的重复对象。

This question也可能有所帮助。

关于hibernate - org.hibernate.NonUniqueObjectException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6518567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com