Методология построения информационных систем на основе технологии EJB

Реализация компонента


После того как Вы определили Home и Remote интерфейсы своего компонента, необходимо написать реализации методов определенных в них. К некоторым методам в реализации добавляется приставка ejb. Пример реализации выше рассмотренного компонента показан на рис. 10.

Рис.10

Кратко опишу, зачем нужны все показанные методы и параметры, а также коснусь примерной их реализации:

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

ds - ссылка на пул соединений с базой данных.

name, title, description, jndi, port - параметры компонента доступные через методы Remote-интерфейса

serverHome - ссылка на Home-интерфейс компонента Server (не заостряйте свое внимание на этом, так как она всплыла в примере случайно).

setEntityContext/unsetEntityContext - методы, в которых устанавливается ctx. Вызываются только контейнером.

ejbActivate/ejbPassivate - методы управляющие жизненным циклом компонента. Вызываются только контейнером.

ejbRemove - метод который вызывается перед уничтожением компонента на стороне сервера. Для сущностного бина, например, реализует запрос в базу данных на удаление этого компонента из базы.

getConnection - метод который вызывают для взятия соединения из пула соединений (см. ds). Его определяют больше для удобства и он к спецификации EJB не имеет ни какого отношения.

ejbCreate - методы которые реализует create методы из Home-интерфейса. Например, для сущностных бинов в нем реализуют запрос к базе данных для создания компонента и в нем устанавливают параметры компонента.

ejbPostCreate - методы вызываются после ejbCreate. Как использовать эту возможность я не смог придумать и обычно реализация этого метода пуста.

ejbFind - методы реализуют find методы определенные в Home-интерфейсе и производят поиск компонентов в базе данных.

get/set - методы реализуют get/set методы определенные в Remote-интерфейсе.

toString - определен для пущей совместимости с инфраструктурой JAVA. Если, ни дай Бог, кому-то, например, приспичит через System.out.println посмотреть с каким это компонентом сейчас работает программа... К спецификации EJB не имеет ни какого отношения.

[Продолжение следует...]

Copyright © 2001 Eugene Igumnov. Все права защищены.

Домашняя страничка:

23.05.2001

|



Содержание раздела