n.....y
n.....y
#java
#spring

https://bottega.com.pl/pdf/materialy/receptury/tx.pdf

REQUIRESNEW – skutki separacji w JPA
Wywołując metody z propagacją REQUIRES
NEW, zawsze stworzona zostanie nowa transakcja.
Jeżeli używamy JPA, to pracujemy z nową instancją
EntityManager, czyli mamy doczynienia z nowym, osobnym cache pierwszego poziomu (L1 cache).
Musimy pamiętać o konsekwencjach:
•Dane pobrane przez metodę zewnętrzną nie znajdują się w tym samym cache co dane dla metody zewnętrznej
•Pobieranie danych przez „wewnętrzny” cache powoduje opróżnienia „zewnętrznego” cache – nie widzimy tych danych w bazie przy odczycie

Czy instancja EM jest zawsze tworzona dla nowej transakcji jak to jest?
EntityManager jest thread safe?
  • Najlepsze
  • Wszystkie komentarze
TheDudee
@nie_tuzinkowy: An EntityManager is an inexpensive, non-threadsafe object that should be used once, for a single business process, a single unit of work, and then discarded.
n.....y
n.....y
@TheDudee: Wieć jak mam EJB Stateless do niego jest wstrzykiwane proxy?
TheDudee
@nie_tuzinkowy: wstrzykiwany jest do serwis/dao, nie do beana. I nie wiem* czy jest to proxy czy konkretny obiekt.
n.....y
n.....y
@TheDudee: Repository tez moze byc Stateless...
TheDudee
@nie_tuzinkowy: aa, o to Ci chodzi, czaję