Può un singolo EntityManager (Hibernate) partecipare a più transazioni simultanee?
-
21-09-2019 - |
Domanda
C'è un modo un EntityManager può partecipare smoothely in più transazioni simultanee?
Beh, non che concorrente. Qualcosa di simile:
- Avvia tx 1
- Fare roba in tx 1
- Avvia tx 2
- fare cose in tx 2
- Commit tx 2
- Partecipa tx 1 indietro
- Fare roba in tx 1
- Commit tx 1
con gradini seguiti uno ad uno non sovrapposizione.
Soluzione
separati le transazioni? No, non può.
Il tentativo di chiamare EntityTransaction.begin ( ) su una transazione attualmente attivo (che è quello che si potrebbe avere a che fare, diretly o indirettamente) si tradurrà in IllegalStateException
essere gettato.
Unità di concetti portata lavoro / transazioni sono spiegati in dettaglio nel manuale Hibernate EntityManager .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow