EJB. Атрибуты транзакций.

max аватар
131
Находится в разделах:

Транзакции EJB представляют из себя набор механизмов и концепций, которые подстраховывают целостность данных в базе данных, когда множество клиентов пытаются прочитать\обновить базу паралельно.

EJB транзакции  определены на разных уровнях, таких как EJB класс, метод внутри класса, сегмент кода внутри метода. Атрибуты, определенные для определенного метода имеют более высокий приоритет над атрибутами, определенными в определенном классе. Транзакционные атрибуты определены декларативно через дескрипторы развертывания EJB. С декларативным подходом, EJB контейнер будет управлять транзакциями:

 

Атрибуты транзакций

Описание

Required

Методы выполняются внутри транзакции. Если клиент предоставляет транзакцию, используется она. Если нет, в таком случае генерируется новая транзакция. Происхоидит коммит в конце метода, который означает, что метод, имеющий включенный атрибут required,  но был вызван когда транзакция уже была начата, не будет вкомичен по завершении метода.

Mandatory

Клиент этого EJB должен создавать транзакцию, в которой этот метод оперирует, иначе будет ошибка.

RequiresNew

Методы выполняются внутри транзакции. Если клиент предоставляет транзакцию, он приостанавливается. Если нет – генерируется новая транзакция. Коммит в конце метода.

Supports

Транзакции не обязательны.

NotSupported

Транзакции не поддерживаются. Если поддерживаются – игнорируются.

Never

Код в EJB ответственный за контроль за транзакцией.


Конец
Теодор Рузвельт спешит напомнить, что не стоит повышать голос, но стоит держать наготове большую дубинку, и ты далеко пойдешь.

все же транзакция создается, а не генерируется.

Отправить комментарий

CAPTCHA
Чтобы оставить комментарий, введите пожалуйста код, изображенный на картинке
Image CAPTCHA
Введите символы, изображенные на картинке