Kann ein einzelner EntityManager (Ruhezustand) in mehreren gleichzeitigen Transaktionen teilnehmen?
-
21-09-2019 - |
Frage
Gibt es eine Möglichkeit einen EntityManager kann smoothely in mehreren gleichzeitigen Transaktionen teilnehmen?
Nun, das nicht gleichzeitig. So etwas wie:
- Start tx 1
- Do Sachen in tx 1
- Start tx 2
- Do Sachen in tx 2
- Commit tx 2
- Join tx 1 zurück
- Do Sachen in tx 1
- Commit tx 1
mit den Schritten gefolgt nacheinander nicht überlappen.
Lösung
Separate Transaktionen? Nein, es kann nicht.
nennen Versuch EntityTransaction.begin ( ) auf einer derzeit aktiven Transaktion (das ist, was Sie tun müsste, wird diretly oder indirekt) führen in IllegalStateException
geworfen.
Einheit der Arbeit / Transaktionsbereich Konzepte werden im Detail in der Hibernate EntityManager Handbuch .
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow