Тип транзакции EJB - PullRequest
       24

Тип транзакции EJB

4 голосов
/ 15 апреля 2009

Я искал и содержательную статью по этому вопросу, но еще не нашел одну достаточно хорошую.

Может кто-нибудь объяснить мне, как работают типы транзакций? (Обязательный, Требуется Новый, Обязательный, Никогда ...) и, главным образом, как они влияют на вызовы между службами разных типов?

Ответы [ 4 ]

4 голосов
/ 25 июля 2009

Enterprise Java Beans 3.0 от Билла Бёрка и Ричарда Монсона Хейфеля - отличный справочник для всего, что связано с EJB3. Атрибуты txn на самом деле довольно просты. В основном вы используете их на уровне метода в EJB-компонентах, используя аннотации.

  1. Обязательный означает, что для запуска этого метода требуется txn. Если вызывающий абонент был в txn, он будет использован. Если нет, то новый txn будет создан и использован.
  2. requireNew означает, что для запуска этого метода требуется новый txn. Если вызывающий абонент был в txn, он будет приостановлен, а новый txn будет создан и использован. Если нет, то новый txn будет создан и использован
  3. Обязательно означает, что вызывающая сторона должна быть в txn при вызове указанного метода. В противном случае возникает ошибка.
  4. Поддерживает, означает, что метод не заботится о том, был ли абонент в txn или нет.
  5. NotSupported - если вызывающий абонент находился в txn, то txn будет приостановлено и метод будет запущен без txn.
  6. Никогда - так же, как NotSupported, но этот вызовет ошибку, если у вызывающего абонента был txn, но NotSupported не вызовет ошибку.
1 голос
/ 15 апреля 2009

Руководство разработчика по управлению транзакциями EJB кажется мне довольно полным руководством.

0 голосов
/ 06 октября 2009

Освоение Enterprise JavaBeans 3.0, Wiley.

Доступно бесплатно по адресу:

http://www.theserverside.com/tt/books/wiley/masteringEJB3/index.tss

См. Гл. 10.

...