Z pewnych powodów ręcznie wykonałem commit transakcji i wycofałem za pomocą Spring PlatformTransactionManager, muszę ustawić hak tak, aby akcja po zatwierdzeniu miała miejsce po transakcji zobowiązany.Tworzenie po zatwierdzeniu transakcji na wiosnę
Patrząc na:
void commit(TransactionStatus status) throws TransactionException;
nie mogę zobaczyć, jak mogę określić transakcja przebiegła pomyślnie inne niż assumming go więc jeśli nie expception są wyrzucane.
Mogę użyć AOP jako jednej z opcji, ale co z programowaniem, może używając metody callback?
OK, wydaje się to całkiem miłe ... więc jeśli jest związany z pojedynczym wątkiem, a wywołanie jest rekurencyjne ...powiedzmy, że pojedynczy wątek rozpoczyna transakcję rejestruje synchronizację (1 - po zatwierdzeniu), a następnie wywołuje inną metodę, która dołącza do tej transakcji, rejestruje synchronizację (2 - po zatwierdzeniu) .... kiedy zatwierdza ... myślę, że tylko jeden po zatwierdzeniu synchronizatora Zostałby zwolniony ... z powodu ich przechowywania w zestawie? .. może im źle, musiałbym przetestować ... – user1555190
Obiekty 'TransactionSynchronization' są przechowywane jako listy według wątków, listy, które można pobrać za pomocą' TransactionSynchronizationManager. getSynchronizations() ' – Grooveek
Uważam, że jest przechowywany jako zestaw, a następnie zwracana jako lista ... Ustaw synchronizuje .............. zwraca nową ArrayList (synchs) ..... po prostu myślę o dwóch po tym, jak zatwierdzenia będą strzelać ... –
user1555190