【问题标题】:Detached entity and lazy loaded fields - worker threads分离实体和延迟加载字段 - 工作线程
【发布时间】:2013-12-08 10:53:31
【问题描述】:

我遇到了以下问题。 A 类正在从数据库中检索一些对象,这些对象本身就是可运行的,并在线程池中运行它们。他们需要在运行时更新他们的状态(他们更新注册在他们身上的监听器)。问题是他们在实体处于分离状态时访问延迟加载字段(因为事务仅涵盖主线程) - 所以当然有例外(com.sun.jdi.InvocationException 发生调用方法。)。我猜每个实体的注释运行方法都不起作用,因为实体已经加载到不同的事务中,对吗?如何应对这种情况?

谢谢!

【问题讨论】:

    标签: java hibernate entity


    【解决方案1】:

    无法访问分离实体中的延迟加载字段,您需要先附加实体。

    在尝试访问延迟加载的字段之前,通过调用 session.merge() 或 entityManager.merge() 将实体附加到会话。

    【讨论】:

      猜你喜欢
      • 2021-06-30
      • 1970-01-01
      • 2011-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-21
      相关资源
      最近更新 更多