【问题标题】:Can a single EntityManager (Hibernate) participate in multiple concurrent transactions?单个EntityManager(Hibernate)可以参与多个并发事务吗?
【发布时间】:2010-11-26 05:29:13
【问题描述】:

有没有一种 EntityManager 可以顺利参与多个并发事务的方法?

嗯,不是那么并发。比如:

  1. 开始发送 1
  2. 在 tx 1 中做事
  3. 开始发送 2
  4. 在 tx 2 中做事
  5. 提交 tx 2
  6. 加入 tx 1 回来
  7. 在 tx 1 中做事
  8. 提交 tx 1

步骤一个接一个不重叠。

【问题讨论】:

    标签: hibernate jpa jta hibernate-entitymanager


    【解决方案1】:

    单独交易?不,它不能。

    尝试在当前活动的事务上调用EntityTransaction.begin()(这是您必须直接或间接执行的操作)将导致IllegalStateException 被抛出。

    工作单元/事务范围概念在Hibernate EntityManager manual中有详细解释。

    【讨论】:

      猜你喜欢
      • 2014-11-11
      • 1970-01-01
      • 2016-12-23
      • 1970-01-01
      • 1970-01-01
      • 2013-07-29
      • 2010-11-23
      • 2015-05-05
      • 2014-09-06
      相关资源
      最近更新 更多