【问题标题】:Hibernate StalestateException problemHibernate StalestateException 问题
【发布时间】:2011-06-22 04:47:15
【问题描述】:

我正在开发一个使用 Hibernate 将对象持久保存在数据库中的 Web 应用程序。 这是问题 我们将从第三方获取 XML,我们需要将这些数据保存到数据库中。我们可以稍后为同一实体获取更新的 XML,因此我们需要更新所有记录,但由于我们从第三方获取更新的 XML,所以没有他们可以为我们提供该实体的 UUID 的方式。 所以我们使用以下方法 检查对象是否已经在数据库中(XML 具有唯一值作为 entityid) 如果对象存在删除记录并将其保存为新对象(替换模式的种类) 如果对象不在数据库中,则简单保存。

现在我们面临一个严重的问题。如果我保存了对象,然后在第二次调用中我们发送了一个更新的请求,其中包含更新的记录的对象 hibernate 正在使用上次事务中保存的对象更新此对象 UUID。

现在它可以删除对象,但是当我们尝试保存对象时,它会抛出 stalestate 异常,因为 hibernate 已经为这个对象设置了 UUID。

我们尝试使用 update 方法,但如果在稍后阶段我们尝试更新对象,这将一直有效,直到上下文相同,而不是它会抱怨标识符属性,因为在这种情况下它将为空。

任何人都可以帮助我解决这个问题,因为这似乎是上下文和休眠内部会话管理的问题。

提前致谢 乌梅什

【问题讨论】:

    标签: hibernate jpa


    【解决方案1】:

    问题解决了!! 它与spring配置有关,hibernate工作正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-09
      • 1970-01-01
      • 1970-01-01
      • 2013-02-07
      • 2015-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多