Ręczne transakcje w Springu

Ręczne transakcje w Springu

Wątek przeniesiony 2022-06-17 14:58 z Inżynieria oprogramowania przez somekind.

SA
  • Rejestracja:ponad 3 lata
  • Ostatnio:ponad 2 lata
  • Postów:94
1

Czy da się w Springu ręcznie zarządzać transakcjami? Chodzi mi o nieużywanie @Transactional tylko jakiegoś EntityManagera z getTransacion(), commit() itd.

edytowany 2x, ostatnio: Riddle
KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:10 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
2

Niezła patologia. Na szybko to nawet nie da się zgooglać materiałów o JPA bez Springa. W starym dobrym Hibernate można było ręcznie utworzyć transakcje. Możliwe że dalej jest to możliwe jak wyciągniesz obiekt sesji. Dla interfejsu JPA nie umiem tego znaleźć


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
YA
  • Rejestracja:około 10 lat
  • Ostatnio:43 minuty
  • Postów:2372
3

Transakcjami zajmuje się TransactionManager, którego spring przykrywa swoją magią i nie ważne czy @deklaratywnie czy programowo, to i tak rafia do TransactionManagera.

Szybkie google: https://www.marcobehler.com/guides/spring-transaction-management-transactional-in-depth

S9
  • Rejestracja:ponad 4 lata
  • Ostatnio:ponad 2 lata
  • Lokalizacja:Warszawa
  • Postów:1092
3
KamilAdam napisał(a):

Niezła patologia. Na szybko to nawet nie da się zgooglać materiałów o JPA bez Springa.

To słabo szukasz, 3 wynik.
No i jak wyżej, polecam korzystać z TransactionTemplate. Jest łatwy w użyciu, a dodatkowo obsługuje nie tylko JPA.


edytowany 1x, ostatnio: scibi_92
KamilAdam
A to sorry. Jechałem wtedy uberem i z komórki ciężko mi się googluje takie rzeczy (biorąc pod uwagę że jeszcze uprzedzony jestem :P )
W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:39 minut
  • Postów:3614
1

Tak jak napisał @yarel i @scibi_92 - Spring trzyma wszelkiego rodzaju obiekty typu EntityManager czy TransactionManager w kontekście - wystarczy wyciągnąć BeanFactory i wylistować. Nie dla osób o słabych nerwach ;)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.