4.1 Реализация Java-апплетов
Для реализации поставленной в предметной области курсового проекта задачи необходимо разработать приложения для двух типов пользователей:
1) абонентов;
2) менеджеров.
Реализация взаимодействия пользователя и CGI-программы будет осуществляться с помощью апплетов. Необходимо разработать Java-апплеты для каждого типа пользователей.
Ограничение прав доступа к БД и системе в целом производится на уровне приложений (Java-апплетов). Это осуществляется ведением имен и паролей пользователей.
Выделим формы приложения и задачи, решаемые с помощью приложений для каждого типа пользователей.
Приложение абонентов состоит:
1. Форма авторизации в системе.
2. Окно личной страницы, предусматривает действия: просмотр информации о себе, хранящейся в БД; добавление оплаты.
Приложение менеджеров состоит:
1. Форма авторизации в системе.
2. Форма отображения существующих тарифов и услуг. Возможны следующие действия: удаление, добавление, просмотр информации о тарифах и услугах.
3. Форма отображения зарегистрированных абонентов. Возможны следующие действия: просмотр списка абонентов, просмотр договоров каждого абонента и состояния оплаты по каждому договору.
4. Форма отображения зарегистрированных договоров. Возможны следующие действия: просмотр списка договоров, добавление, удаление договоров.
Апплет «Abonent.java» содержит элементы диалога с абонентом. Апплет «Admin.java» содержит элементы диалога с менеджером. Апплет «HTTPPost.java» реализует взаимодействие двух других апплетов с web-сервером. Он содержит класс URLconnection, производящий загрузку объекта, на который ссылается URL.
Классу HTTPPost передается переменная mes из апплетов «Admin.java» и «Abonent.java», содержащая значения переменных апплетов, которая выступает строкой запроса, обрабатываемой CGI-программой. Взаимодействие апплетов и CGI-программы представлено на рисунке 4.
Размещено на http://www.allbest.ru/
Рисунок 4 - Взаимодействие апплетов и CGI-программы
Варианты запросов, отсылаемых Java-апплетом «Abonent.java» CGI-скрипту приведены в таблице 1.
Таблица 1 - Варианты запросов, отсылаемых Java-апплетом “Abonent.java»
Строка запроса Java-апплета |
Ответ CGI-приложения |
Интерпретация |
|
1 |
2 |
3 |
|
"what=reg&login="+s+ "&password="+p |
true&номер абонента#фамилия#имя#отчество#адрес |
Авторизация |
|
"what=dog&chel_id="+ id_cheloveka |
true&номер договора#номер тарифа@....@ номер договора#номер тарифа |
Формирование списка договоров |
|
"what=tar&tar_id="+ id_tar |
true&номер тарифа#название@....@ номер тарифа#название |
Формирование списка тарифов |
|
"what=usl&tar_id="+ id_tar |
true&номер услуги#название@....@ номер услуги#название |
Формирование списка услуг |
|
"what=opl&tar_id="+ id_tar+"&dog_id="+ id_dog+"&chel_id="+ id_chel |
true&дата#сумма@....@дата#сумма |
Формирование списка платежей |
|
"what=addopl&tar_id="+ id_tar+"&dog_id="+ id_dog+"&chel_id="+ id_chel+"&dat_id="+ DatT.getText()+"&sum="+ SumT.getText() |
true |
Формирование данных по добавлению платежа |
Варианты запросов, отсылаемых Java-апплетом “Admin.java» CGI-скрипту, приведены в таблице 2.
Таблица 2 - Варианты запросов, отсылаемых Java-апплетом “Admin.java»
Строка запроса Java-апплета |
Ответ CGI-приложения |
Интерпретация |
|
1 |
2 |
3 |
|
"what=showabonent" |
true&номер#фамилия#имя#отчество#адрес@..... @номер#фамилия#имя#отчество#адрес |
Формирование списка абонентов |
|
"what=showdogovor" |
true&номер договора@....@номер договора |
Формирование списка договоров |
|
"what=showtarif" |
true&номер тарифа#название@....@ номер тарифа#название |
Формирование списка тарифов |
|
"what=usl&tar_id="+ id_tar |
true&номер услуги#название@....@ номер услуги#название |
Формирование списка услуг |
|
"what=dog&chel_id="+ id_abon |
true&номер договора#номер тарифа@....@ номер договора#номер тарифа |
Формирование списка договоров абонента |
|
"what=tar&tar_id="+ id_tar |
true&номер тарифа#название@....@ номер тарифа#название |
Показать информацию о тарифе |
|
"what=showabonent_dogovor&dog_id="+ id_dog |
true&номер#фамилия#имя#отчество#адрес |
Вывести абонента договора |
|
what=showtarif_dogovor&dog_id="+ id_dog |
true&номер договора#....#номер договора |
Вывести тариф договора |
|
"what=addnewdog&ab_id="+ addab+"&t_id="+addtarid |
true |
Добавление договора |
|
"what=addnewtar&tar_name="+ addtarname |
true |
Добавление тарифа |
|
"what=addnewabonent&a_fam="+fam+"&a_name="+name+"&a_otch="+otch+"&a_adres="+adres+"&a_log="+log+"&a_pas="+pas |
true |
Добавление абонента |
|
"what=addnewusl&usl_name="+ adduslname+"&tid="+ tar_name |
true |
Добавление услуги |
|
"what=deltar&id_tar="+ tar_name |
true |
Удаление тарифа |
|
«what=deldog&id_dog="+ dog_id |
true |
Удаление договора |
|
"what=delabonent&id_ab="+ id_ab |
true |
Удаление абонента |
|
"what=deluslug&id_usl="+ usl_name |
true |
Удаление услуги |
|
"what=opl&tar_id="+ id_tar+"&dog_id="+ id_dog+"&chel_id="+ id_chel |
true&дата#сумма@....@дата#сумма |
Сформировать список платежей договора |
При неудаче выполнения какого-либо запроса в качестве ответа Java-апплету возвращается false.
- 40. Java-апплеты.
- 3.7.3 Язык Java
- Cgi. Java web-сервер
- 2.2. Обоснование необходимости использования Java–апплетов
- 27). Основы взаимодействия java-апплетов с броузером, особенности исполнения апплетов.
- 1.5 Описание языка программирования Java
- 42. Современные технологии разработки web-приложений. Принципы использования субд в web-приложениях.
- 32. Протокол http. Обеспечение интерактивности и динамичности Web-страниц. Технология Java, апплеты и сервлеты.
- 7.2.5. Java-апплеты
- 32. Протокол http. Обеспечение интерактивности и динамичности Web-страниц. Технология Java, апплеты и сервлеты.