Главная » Java, JavaBeans » Структурные шаблоны (design patterns) и соглашения об именах в EJB

0

Существуют три основных подхода для создания объектно- ориентированных многозвенных распределенных систем: с сервером без состояния, ориентированный на сеансы связи с клиентом и с использованием "долгоживущих" объектов.

Сервером без состояния называется объект, который обеспечивает нужную функциональность путем предоставления набора операций, но не сохраняющий состояния между вызовами этих операций. При обращении к такому объекту клиент не может полагаться на использование результата предыдущего вызова того же объекта.

Подход, ориентированный на использование сеансов, предполагает создание в некотором промежуточном звене системы специального объекта – "сеанса" (или "сессии"), который является представителем клиента. Обычно время существования такого объекта явно определяется клиентом или серверным процессом, в котором существует данный объект. Клиент уничтожает объект, если он ему

больше не нужен; сервер может уничтожить его, например, по тайм- ауту. Если серверный процесс завершен, имеющаяся у клиента ссылка на объект может потерять свой смысл.

Модель системы с сохраняемыми объектами предполагает создание некоей программной оболочки вокруг данных, хранящихся в некоторой БД, и создание набора операций для работы с этими данными. Созданный таким образом объект доступен одновременно для нескольких клиентов. Его время существования определяется временем существования в хранилище данных, объектным представлением которых он является.

В терминах спецификации EJB, объекты трех вышеупомянутых видов называются stateless session bean, stateful session bean и entity bean. С помощью Session-компонентов моделируется сеансо-ориентированный подход. Entity-компоненты используются в случае долгоживущих, сохраняемых серверных объектов. Для каждого из видов компонентов определены интерфейсы и соглашения, о чем подробно будет говориться в 4-ой главе.

Последующие главы содержат соответствующие примеры и объяснения, как и когда использовать тот или иной вид компонентов.

Источник: Руководство программиста Enterprise JavaBeans

По теме:

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