Створення системи електронної комерції
1 Корпоративні компоненти
На малюнку 1 показана загальна схема взаємодії компонентів. У цій роботі буде детально розглянуто кожен тип компонентів, а наприкінці глави буде розглянуто процес побудови, розміщення та запуску програми. br/>В
Рисунок 1 - Додаток Duke's Bank
На малюнку 2 більш детально зображені зв'язку між клієнтами, корпоративними компонентами та таблицями бази даних. Ви бачите, що кінцеві користувачі (Web-клієнти і клієнти J2EE-додатки) звертаються тільки до сесійним компонентам. На рівні корпоративних компонентів сесійні компоненти є клієнтами компонентів управління даними. На рівні сервера компоненти управління даними звертаються до таблиць бази даних, в якій зберігаються їх стану. br/>В
Рисунок 2 - Корпоративні компоненти програми Duke's Bank
2 Сесійні компоненти
Додаток Duke's Bank має три сесійних компоненти: AccountControllerEJB, CustomerControllerEJB і TxControllerEJB. (Tx позначає бізнес-транзакцію, наприклад переказ грошей.) Ці сесійні компоненти забезпечують клієнтський погляд на бізнес-логіку програми. Прихованими від клієнта є процедури на стороні сервера, реалізують бізнес-логіку, доступ до бази даних, управління відносинами і виконання перевірки помилок. br/>
2.1 AccountControllerEJB
Бізнес-методи сесійного компонента AccountControllerEJB виконують завдання, що потрапляють в такі категорії: створення та видалення компонентів управління даними, управління зв'язками рахунок-користувач і отримання інформації про рахунок.
Наступні методи створюють і видаляють компоненти управління даними:
- createAccount;
- removeAccount.
Ці методи сесійного компонента AccountControllerEJB викликають методи create і remove компонента управління даними AccountEJB. Методи createAccount і removeAccount генерують виняткову ситуацію для вказівки неправильних аргументів методу. Метод createAccount генерує IllegalAccountTypeException, якщо тип аргументи не Checking, Saving, Credit або Money Market. Метод createAccount також перевіряє, що вказаний користувач існує, за допомогою виклику методу findByPrimaryKey компонента управління даними CustomerEJB. Якщо результат цієї перевірки дорівнює false, метод createAccount генерує CustomerNotFoundException. p align="justify"> Наступні методи управляють відносинами рахунок-користувач:
- addCustomerToAccount;
-