Откат транзакций в JAX-RS - PullRequest
1 голос
/ 11 мая 2011

У меня есть простой класс ресурсов, который реализует некоторый метод POST.Как выполнить откат транзакции, если в моих методах были исключения, и commit - если все в порядке?

Есть ли способ написать этот код один раз - не в каждом классе ресурсов, который у меня есть?

Ответы [ 2 ]

1 голос
/ 11 мая 2011

Если вы используете Spring, @Transactional будет обрабатывать ваш сценарий.

http://static.springsource.org/spring/docs/3.0.x/reference/transaction.html

0 голосов
/ 12 мая 2011

Использование внедрения зависимостей значительно упростит это.Использование @Transactional или аналогичных аннотаций для методов, в которых вы хотите зафиксировать / откатить транзакции.

Если вам нужно сделать это вручную, у вас есть в основном два варианта:вручную для каждой операции

используйте шаблон прокси / шаблон декоратора и прокси / украсьте все ваши классы, которые требуют транзакций.Затем в прокси / декораторе запустите транзакцию, делегируйте ее цели и подтвердите после ее возврата.(это то, как это делают DI-фреймворки)
...