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

 

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

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

Дейтел Х.М. , Дейтел П.Дж., Сантри С.И. Технологии профаммирования на Java 2 Книга 3 — М.: Бином-Пресс, 2003. — 672 c.
ISBN 5-9518-0051-Х
Скачать (прямая ссылка): tehprogrammjava220033.pdf
Предыдущая << 1 .. 224 225 226 227 228 229 < 230 > 231 232 233 234 235 236 .. 271 >> Следующая

SQL-оператор удаления таблицы Table Delete SQL Statement DROP TABLE CustomerOrders

Рис. 11.19. Параметры управления данными и развертыванием для EJB-компонента Order
Ссылки на EJB-компоненты для компонента Order
Кодовое имя Coded Name ejb/Product
Тип Type Entity
Собственный интерфейс Ноте com.deitel.advjhtpl.bookstore.ejb.ProductHome
Удаленный интерфейс Remote com.deitel.advjhtpl.bookstore.ejb. Product

Практический пример корпоративного приложения. Бизнес-логика: часть 1
563
Ссылки на EJB-компоненты для компонента Order
Имя JNDI Name Product —
Кодовое имя Coded Name ejb/SequenceFactory
Тип Туре Entity
Собственный интерфейс Ноте com.deitel.advjhtpl. bookstore,ejb.SeguenceFactoryHome
Удаленный интерфейс Remote com.deitel.advjhtpl.bookstore.ejb. Sequence-Factory
IJl /а I It І ГЧ 1 * 1
Имя JNDI Name SeguenceFactory
Кодовое имя Coded Name ejb/Customer
Тип Type Entity
Собственный интерфейс Home com.deitel.advjhtpl.bookstore.ejb.CustomerHome
Удаленный интерфейс Remote com.deitel.advjhtpl.bookstore.ejb.Customer
Имя JNDI Name Customer
Кодовое имя Coded Name ejb/OrderProduct

Тип Туре Entity
Собственный интерфейс Ноте com.deitel.advjhtpl.bookstore.ejb.OrderProductHome
Удаленный интерфейс Remote com.deitel.advjhtpl.bookstore.ejb.OrderProduct
Имя JNDI Name OrderProduct

Рис. 11.20. Ссылки на EJB-компоненты для компонента Order
11.6. Реализация EJB-компонента OrderProduct Компонент-сущность EJB OrderProduct представляет отношение «многие ко
многим» между заказами и товарами. Каждый EJB-компонент OrderProduct имеет атрибуты orderID, ISBN и quantity и представляет один элемент заказа.
11.6.1. Удаленный интерфейс OrderProduct
Удаленный интерфейс OrderProduct (рис. 11.21) определяет бизнес-методы для EJB-компонента OrderProduct. EJB-компонент OrderProduct устанавливает соответствие между ISBN-кодом товара и идентификатором заказа, а также количеством заказываемого товара. Метод getOrderProductModel (строки 18-19) возвращает объект OrderProductModel, содержащий информацию из записи таблицы OrderProduct.
1 // OrderProduct.java
2 // OrderProduct - удаленный интерфейс для EJB-сущности
3 // OrderProduct.
4 package com.deitel.advjhtpl.bookstore.ejb; 5
6// Набор базовых пакетов Java 7 import java.rmi.RemoteException; 8
9// Пакеты расширений Java
564
Глава 11
10 import javax.ejb.*; 11
12 Il Пакеты Deitel
13 import com.deitel.advjhtpl.bookstore.model. *; 14
15 public interface OrderProduct extends EJBObject ( 16
17 Il получение сведений о заказе в виде объекта OrderProductModel
18 public OrderProductModel getOrderProductModel()
19 throws RemoteException;
20 } _
Рис. 11.21. Удаленный интерфейс OrderProduct для изменения информации, содержащейся в экземплярах EJB-компонента OrderProduct
11.6.2. Реализация OrderProductEJB удаленного интерфейса OrderProduct
Реализация OrderProductEJB удаленного интерфейса OrderProduct (рис. 11.22) объявляет поля ISBN, orderID и quantity (строки 22-24), управляемые контейнером. Метод getOrderProductModel (строки 27-69) возвращает информацию из записи таблицы OrderProduct в виде объекта OrderProductModel. Метод setOrder-ProductModeI (строки 75-77) задает данные для записи таблицы OrderProduct с использованием данных, извлеченных из параметра OrderProductModel.
Ill OrderProductEJB.java
2// EJB-сущность OrderProductEJB устанавливает 3// соответствие между товаром и заказом и содержит
4 // информацию о количестве данного товара в заказе.
5 package com.deitel.advjhtpl.bookstore.ejb; 6
7// Набор базовых пакетов Java 8 import j ava.rmi.RemoteException; 9
10// Пакеты расширений Java
11 import javax.ejb.*;
12 import javax.naming.*;
13 import javax.rmi.PortableRemoteObject; 14
15 Il Пакеты Deitel
16 import com.deitel.advjhtpl.bookstore.model.*; 17
18 public class OrderProductEJB implements EntityBean (
19 private EntityContext entityContext; 20
21 It поля, управляемые контейнером
22 public String ISBN;
23 public Integer orderID;
24 public int quantity; 25
26 Il получение сведений о заказе в виде объекта OrderProductModel
27 public OrderProductModel getOrderProductModel()
28 throws EJBException
29 {
30 OrderProductModel model = new OrderProductModel();
Практический пример корпоративного приложения. Бизнес-логика: часть 1
565
31
32 // получение объекта ProductModel для товара в указанном заказе
33 try {
34 Context initialContext = new InitialContext(); 35
36 If поиск EJB-компонента Product
37 Object object = initialContext. lookup (
38 "java:comp/env/ejb/Product" ) ; 39
40 Il получение интерфейса ProductHome
41 ProductHome productHome = ( ProductHome )
42 PortableRemoteObject.narrow( object,
43 ProductHome. class ); 44
45 I/ нахождение книги по ее ISBN-коду
46 Product product =
47 productHome.findByPrimaryKey( ISBN ); 48
49 I/ получение объекта ProductModel
50 ProductModel productModel =
51 product.getProductModel(); 52
53 // установка объекта ProductModel в объекте OrderProductModel
54 model.setProductModel( productModel ); 55
Предыдущая << 1 .. 224 225 226 227 228 229 < 230 > 231 232 233 234 235 236 .. 271 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100