Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Дейтел Х.М. -> "Технологии профаммирования на Java 2 Книга 3" -> 245

Технологии профаммирования на Java 2 Книга 3 - Дейтел Х.М.

Дейтел Х.М. , Дейтел П.Дж., Сантри С.И. Технологии профаммирования на Java 2 Книга 3 — М.: Бином-Пресс, 2003. — 672 c.
ISBN 5-9518-0051-Х
Скачать (прямая ссылка): tehprogrammjava220033.pdf
Предыдущая << 1 .. 239 240 241 242 243 244 < 245 > 246 247 248 249 250 251 .. 271 >> Следующая

Рис.12.24. Результаты добавления классов EJB в JAR-файл EJB-компонента
После добавления файлов классов в JAR-файл EJB-компонента необходимо указать файлы классов, которые содержат удаленный интерфейс, собственный интерфейс и реализацию EJB-компонента (рис. 12.25). Выберите соответствующий класс из раскрывающегося списка, как показано на рис. 12.25. EJB-компонент Order представляет собой компонент-сущность, поэтому в разделе Bean Туре выберите опцию Entity (рис. 12.26).
ЕЗ^^е** tntcrprisc Se on wii.*fd - General
' Ptane «der Щ (wneef the das* lfss tftal wW Jw todude^.y^/tjB JAR ало'. wwicaie ine type ol Єгггегріїве Baan mat you would like to treato. AJsc, Ff cwoe л displarr.aroe. вваегір&ні, and icons tor the ЬвпртПоїфю?» ¦ ueiRoyDuriMan. '.:
•¦ ЙІїШїіве Bean'Oaer.
Рис. 12.25. Задание классов, собственного интерфейса и удаленного интерфейса для EJB-компонента
Практический пример корпоративного приложения. Бизнес-логика: часть 2
607
Рис. 12.26. Задание Entity в качестве типа Bean Туре EJB-компонента
EJB-компонент с данными Order использует персистентность, управляемую контейнером, для синхронизации своих данных с соответствующей таблицей базы данных. На следующем шаге мастера (рис. 12.27) выберите опцию Container-Managed Persistence и установите флажки рядом с каждым из полей, управляемых контейнером. Укажите полное имя класса для класса первичного ключа
^NcW tnterpme ве<іо V/ward - іїіііу SeUifws
Є provide
3(nceiTiis]sanenai аго ffw cpjor ii ioio <k*ne lfycuare using¦conlainWmarpaged persistence, please choose SMiIiEh FleLds you would like perilsled.
.-pei stet e псе Маш
Рис. 12.27. Настройка полей, управляемых контейнером, и класса первичного ключа
608 Глава 12
(включая имя пакета) в поле Primary Key Class. Для EJB-компонента Order введите java.lang.Integer в качестве имени класса первичного ключа. Если ваш EJB-компонент использует класс первичного ключа, определенный разработчиком (например, EJB-компонент OrderProduct), необходимо также указать полное имя пакета (например, com.deitel.advjhtpl.bookstore.ejb.OrderProductPK). Выберите в раскрывающемся списке Primary Key Field Name поле, которое содержит первичный ключ (например, orderID).
Если ваш EJB-компонент ссылается на другие EJB-компоненты, эти EJB-компоненты должны быть указаны в инструментальном средстве развертывания Application Deployment Tool (рис. 12.28). Щелкните на кнопке Add, чтобы добавить новую ссылку на EJB-компонент. Столбец кодового имени Coded Name содержит строку, используемую для поиска EJB-компонента в каталоге JNDI. Например, чтобы найти EJB-компонент Product, используется строка java:comp/env/ ejb/Product. Соответствующим кодовым именем будет ejb/Product. Выберите нужный тип для EJB-компонента (например, Session для сеансового EJB-компонента или Entity для компонента-сущности EJB) из раскрывающегося списка Туре. Укажите полные имена классов (включающие имена пакетов) для собственного и удаленного интерфейсов в столбцах Ноте и Remote. Например, в столбце Ноте для EJB-компонента Product укажите com.deitel.advjhtpl.bookstore.ejb. ProductHome. Введите имя JNDI в поле JNDI Name для EJB-компонента, на который осуществляется ссылка (например, Product).
New Enterprise Вели Wizard - Enterprise Bean References
r ей! t»^.3sejWW<3aitie type o( bean requires (session or «їй n»' t^ttud'hef'atkag'el ofltie Home and Rehige^airatBSeeeetBS
¦v Name jeiWProOucI I:..:. ..Type Enlily com deitel advj com.deilel.acNi I
|ejb/OrderProdu.. iEnmy ¦com.dertel.adv}.. icom.deitel.adv} U ¦
jejitfCustomer Jlnffty icom dsHel.adyi com.deilel.ady).. і I
lejb/SequenceF..1 'Com.deuel.advl.. jcoiri.deitel.ady)... IjH
Delete-
Oep»0H!^Se«tnil«lw<*.<CiE«oincir----T
___I
h-ljcustomer _
< Back., і .Ней»!
_;__
Рис. 12.28. Задание других EJB-компонентов, на которые ссылается данный EJB-компонент
Серверы приложений J2EE поддерживают управление транзакциями, семантика которого может быть задана при развертывании приложения. Для каждого из бизнес-методов задайте соответствующий тип транзакции Transaction Туре (рис. 12.29), как рассказывалось в главе 7.
На рис. 12.30 представлен листинг XML-дескриптора, который был сформирован в результате предыдущих действий. Этот XML-дескриптор может быть использован при развертывании данного приложения на любом совместимом с J2EE сервере приложений.
¦
Практический пример корпоративного приложения. Бизнес-логика: часть 2 609
Рис. 12.29. Задание режима контейнерного управления транзакциями для бизнес-методов EJB-компонента
Рис. 12.30. XML-дескриптор, сформированный средством развертывания Application Deployment Tool
Теперь необходимо настроить базу данных, в которой компонент-сущность с персистентностью, управляемой контейнером, будет хранить свои данные. Щелкните на кнопке Deployment Settings... на вкладке Entity (рис. 12.31).
Укажите имя JNDI для базы данных в поле Database JNDI Name (рис. 12.32). В эталонной реализации J2EE Reference Implementation это значение соответствует значению, заданному в файле конфигурации default.proper ties (например, jdbc/BookStore). Указав имя JNDI для базы данных, щелкните на кнопке Generate SQL Now, чтобы создать необходимые операторы SQL для методов поиска и создания EJB-компонента.
Предыдущая << 1 .. 239 240 241 242 243 244 < 245 > 246 247 248 249 250 251 .. 271 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100