无法在其他事务中访问一个事务会话数据

时间:2017-07-03 10:34:49

标签: java spring spring-transactions hibernate-session

我正在使用Spring事务与hibernate jpa。我有一个活动的事务,我使用Propogation.RequiredNew创建了一个事务,如何在下一个事务中使第一个事务会话数据可用

1 个答案:

答案 0 :(得分:0)

Hibernate的会话可以开始并提交多个事务。您需要确保Hibernate会话在请求期间保持打开状态,而不仅仅是针对单个事务。

我不了解您的实施细节,我猜你可以做以下其中一项;

  1. 您可以使用OpenSessionInView模式实现此目的。这将确保您的Hibernate会话保持打开以进行请求,而不是单个事务。
  2. 您可以存储打开的会话,但是您需要确保它没有并发问题,因为会话对象不是线程安全的。