Главная » Spring » Декларативное управление транзакциями Spring

0

Еще совсем недавно декларативное управление транзакциями бы- ло доступно только в контейнерах EJB. Но сейчас Spring предлага- ет аналогичную поддержку для POJO. Это – важная особенность Spring, потому что теперь для декларативного обеспечения атомар- ности операций не требуется создавать контейнеры EJB.

Поддержка декларативного управления транзакциями в Spring реализована посредством фреймворка Spring AOP. Это вполне ес- тественно, потому что транзакции – это системная служба, стоящая уровнем выше приложения. Транзакции в Spring можно интерпре- тировать как аспекты, «обертывающие» методы.

Фреймворк Spring предоставляет три способа объявления гра- ниц транзакций. Исторически фреймворк Spring всегда обладал поддержкой декларативного управления транзакциями за счет проксирования компонентов с использованием Spring AOP и Trans- actionProxyFactoryBean. Но, начиная с версии Spring 2.0, появился более удобный способ объявления транзакций, основанный на ис- пользовании конфигурационного пространства имен tx и аннотации

@Transactional.

Несмотря на то что класс TransactionProxyFactoryBean все еще до- ступен в современных версиях Spring, он считается устаревшим и потому не будет рассматриваться здесь. Вместо этого мы сконцент- рируемся на использовании пространства имен tx и объявлении транзакций с помощью аннотации. Но сначала исследуем опреде- ление атрибутов транзакций.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

  • Комментарии