EJB.Session, Entity. Message Driven Beans.
Enterprise JavaBeans (также часто употребляется в виде аббревиатуры EJB) — спецификация технологии написания и поддержки серверных компонентов, содержащих бизнес-логику. Является частью Java EE.
Эта технология обычно применяется, когда бизнес-логика требует как минимум один из следующих сервисов, а часто все из них:
поддержка сохранности данных (persistence); данные должны быть в сохранности даже после остановки программы, чаще всего достигается с помощью использования базы данных
поддержка распределённых транзакций
поддержка конкурентного изменения данных и многопоточность
поддержка событий
поддержка именования и каталогов (JNDI)
безопасность и ограничение доступа к данным
поддержка автоматизированной установки на сервер приложений
удалённый доступ
Каждый EJB компонент является набором Java классов со строго регламентированными правилами именования методов (верно для EJB 2.0, в EJB 3.0 за счет использования аннотаций выбор имен — свободный). Бывают трех основных типов:
объектные (Entity Bean), перенесены в спецификацию Java Persistence API
сессионные (Session Beans), которые бывают
без состояния (stateless)
с поддержкой текущего состояния сессии (stateful)
один объект на все приложение (singleton), начиная с версии 3.1
управляемые сообщениями (Message Driven Beans) — их логика является реакцией на события в системе
Транзакции.
Транза́кция (англ. transaction) — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций.
Различают последовательные (обычные), параллельные и распределённые транзакции. Распределённые транзакции подразумевают использование больше чем одной транзакционной системы и требуют намного более сложной логики (например, two-phase commit — двухфазный протокол фиксации транзакции). Также, в некоторых системах реализованы автономные транзакции, или под-транзакции, которые являются автономной частью родительской транзакции.
Одним из наиболее распространённых наборов требований к транзакциям и транзакционным системам является набор ACID (Atomicity, Consistency, Isolation, Durability).
Дата добавления: 2018-09-24; просмотров: 419;