单个EntityManager(Hibernate)可以参与多个并发事务吗?
-
21-09-2019 - |
题
有没有一种方法可以让一个 EntityManager 顺利参与多个并发事务?
嗯,不是那么并发。就像是:
- 开始发送 1
- 在 tx 1 中执行操作
- 开始发送 2
- 在 tx 2 中做一些事情
- 提交交易 2
- 加入 tx 1 返回
- 在 tx 1 中执行操作
- 提交交易 1
步骤一一进行,不重叠。
解决方案
分离 交易?不,它不能。
正在尝试打电话 EntityTransaction.begin() 当前活跃的交易(这是您必须直接或间接执行的操作)将导致 IllegalStateException
被抛出。
工作单元/事务范围概念在 Hibernate EntityManager 手册.
不隶属于 StackOverflow