- •Базы данных
- •1. Введение в базы данных
- •1.1. Базы данных и информационные системы
- •1.2. Архигсюура информационной системы
- •1.3. Системы управления базами данных
- •1.4. Локальные информационные системы
- •1.5. Способы разработки и выполнения приложений
- •1.6. Схема обмена данными при работе с бд
- •2. Модели и типы данных
- •2.1. Иерархическая модель
- •Сотоудники
- •2.2. Сетевая модель
- •2.3. Реляционная модель
- •2.4. Постреляционная модель
- •2.5. Многомерная модель
- •1996 1994 Петров Смирнов Яковлев
- •2.6. Объектно-ориентированная модель
- •2.7. Типы данных
- •3. Реляционная модель данных
- •3.1. Определение реляционной модели
- •3.2. Индексирование
- •3.3. Связывание таблиц
- •3.4. Контроль целостности связей
- •3.5. Теоретические языки запросов
- •I аспределенное Удаленное Распределен- Удаленн! 1йдо- Распределен- предстаеление представление ная функция ступ к данным наяЬд
- •4.5. Информационные системы в Интернете и интранете
- •Часть 2. I Ъоектиросанн ? и использование бд
- •7. Средства автоматизации проектирования
- •7.1. Основные определения
- •7.8. Рекомендации по применению case-систем
- •9. Дополнительные вопросы применения баз данных
- •9.1. Программно-аппаратные платформы
- •9.2. Перспективы развития субд
- •9.3. Стандартизация баз данных
- •9.4. Характеристика технологии ado.Net
- •10.1. Общая характеристика
- •10.2. Новые возможности Microsoft Access 2002
- •10.3.Средства поддержки проектирования
- •10.4. Создание основных элементов бд
- •IQdbl mdb
- •Option Compare Database Public Function funl() beep End Function
- •10.5. Работа с гиперссылками
- •10.6. Использование языка sql
- •Аргументы макрокоманды ' Инструкция sQl. Select distinctrow tof
- •10.7. Защита баз данных
- •10.9. Обслуживание баз данный
- •10.10. Репликация баз данных
- •Реплицируемые объекты
- •Реплицируемые объекты
- •10.11. Работа с мультимедиа-данными
- •Тип объекта
- •Comic Chat Boom Microsoft Graph so Music Prop pry Page 2 1 Option f ropery Page21 Ры-ndox FableВидео-клип
- •10.12. Создание файлов приложений
- •10.13. Страницы доступа к данным
- •Краткая характеристика отличий сДд от форм и отчетом
- •10.14. Разработка проекта
- •Распределение атрибутов по вариантам
- •11.1. Пользовательский интерфейс
- •11.2. Характеристика проекта
- •11.3. Компиляция и выполнение проекта
- •11.4. Разработка приложения
- •11.5. Средства интегрированной среды разработки
- •Управление параметрами среды
- •11.6. Базы данных и средства работы с ними
- •Компоненты приложений для баз данных
- •11.7. Создание таблиц базы данных
- •11.8. Создание приложения bde
- •Значения свойств компонентов
- •11.9. Работа с отчетами
- •12. Субд Visual FoxPro 8.0
- •12.1. Общая характеристика
- •12.2. Новые возможности Visual FoxPro 8.0
- •12.3. Элементы проекта
- •12.4. Интерфейс Visual FoxPro
- •12.5. Средства автоматизации разработки
- •12.6. Создание баз данных
- •12.7. Таблицы и индексы
- •12.8. Организация межтабличных связей
- •12.9. Обеспечение ссылочной целостности
- •12.10. Создание запросов
- •Variables:
- •13. Microsoft sql Server 2000
- •13.1. Характеристика sql Server
- •13.2. Язык запросов Transact-sql
- •13.3. Системные базы данных и таблицы
- •13.4. Создание баз данных
- •13.5. Работа с таблицами
- •15.1. Принципы функционирования Web-приложений
- •15.2. Архитектура Web-приложений, публикующих бд
- •15.3. Обзор Web-серверов
- •15.4. Использование Personal Web-server
- •15.5. Использование Microsoft Internet Information Server
- •15.6. Использование Apache дляMicrosoft Windows 9х/2000
- •Вы видите это вместо ожидаемой страницы?
- •15.7. Варианты создания Web-узла
- •16. Интерфейсы программирования Web-приложений
- •16.1. Общий интерфейс взаимодействия cgi
- •18. Публикация бд средствами Microsoft Access
- •18.1. Характеристика вариантов публикации
15.1. Принципы функционирования Web-приложений
Программные средства сетей Интернет/интранет включают новую категорию программ — Web-приложения. КWeb-приложениям относят наборWeb-страниц, сценариев и других программных средств, расположенных на одном или нескольких компьютерах (клиентских и серверных) и объединенных для выполнения прикладной задачи.Web-приложения, публикующие БД в Интернет, представляют отдельный классWfeb-приложений.
Современные информационные системы в сетях Интернет/интранет, построенные на основе Wfeb-приложений, использующих БД, по своой архитектуре и организации работы опираются на принципы, заложенные в многоуровневых клиент-серверных приложениях и принципах функционирования Интернета. Основы архитектуры многоуровневых клиент серверных приложений рассмотрены в предыдущей главе.Web-приложения имеют ряд особенностей функционирования, заключающиеся в принципах работы Интернета. Кратко напомним основные из этих принципов.
Wfeb-приложения выполняются на сторонеWfeb-сервера, который находится наWeb-узлах сети Интернет.Wfeb-сервер обрабатывает запросы обозревателя на получениеWeb-страниц и отсылает требуемые данные обозревателю в форматеWeb-документов.
Обмен данными в сети Интернет осуществляется на аппаратном уровне на основе протокола TCP/IP и протокола более высокого логического уровня HTTP. Упрощенная схема функционированияWeb-приложения приведена на рис. 15.1.
ПР
Рис.
15.1. Упрощенная схема функционирования
Web-приложения
Напомним, чтопид Web-д оку ментом(Web-страницей) понимают документы, используемые в сети Интернет в форматахHTML, XML. шаблоны в форматахASP, НТХ и т. д.
Для досгупа к Web-страницам используются специальные клиентские программы — обозревателиWeb, находящиеся на компьютерах пользователей Интернета. Обозреватель формирует запрос ьа получение требуемой страницы или другого ресурса с помощью адресаURL. Функции обозревателя заключаются в отображенииWeb-c границ, сгенерированных сервером или мод} лями расширения, и отправке запросов пользователяWeb-приложению. Обозреватель является связующим звеном между пользователем иWeb-приложением. При этомWfeb-обозреватель устанавливает соединение с требуемымWeb-узлом, используя различные протоколы передачи данных, нами рассматривается использование протоколаHTTP.
Web-приложения в сетях интранет
Развитие технологий в сети Интернет привело к появлению новых архитектурных и технологических решений для локальных корпоративных инт- ранет-сетей. Сети интранет построены на том же аппаратно-программном обеспечении, принципах и протоколах, что и сеть Интернет. В общем случае под сетью интранетпонимают выделенную часть сети Интернет, в которой выполняетсяWeb-приложение (информацгк иная система).
Применение Интернет-технологий в корпоративных интранет-сетях позволяет повышать эффективность функционирования сетей и используемых в них информационных систем.
Приложения, построенные на основе использования Интернет технологий, характеризуются надежностью и масштабируемостью, открытостью архитектуры, простотой изучения и использования.
Надежность WEB-приложений обусловлена устойчивостью работы программно аппаратных средств сети Интернет, устойчивость к сбоям которых испытана в течение многих лет. Например, наиболее популярныеWEB-cep- вера осуществляют обработку более 50 миллионов обращений в день, не имея при этом катастрофических сбоев.
Масштабируемость Web-приложений сетей интранет обеспечивается использованием многоуровневой архитектуры, позволяющей одно и тожеWeb- поиложение практически без переконфигурирования выполнять для интра- нет-приложений с различной архитектурой.
Открытость архитектуры интранет-приложений основывается на гибкой многоуровневой архитектуре и стандартизированных протоколах и форматах документов, доступных для модификации.
Простота изучения и использования интранет приложений обусловлена стандартизацей пользовательского интерфейса на основе применения однотипного клиентского приложения - обозревателя со стандартным пользовательским графическим интерфейсом. Достаточно освоить принципы работ ы одной программы обозревателя, чтобы можно было работать с любыми инт- ранет-приложениями.
Кроме того, использование интранет-приложений характеризуется значительным снижением денежных затрат (в десятки и сотни раз) на обслуживание, модернизацию и наращивание сети интранет по сравнению с традиционными корпоративными сетями, построенными на клиент/серверных технологиях. Важным достоинством сетей интранет является возможность развертывания на существующей инфраструктуре корпоративных локальных и глобальных сетей. Дл я построения сети интранет допускается простое встраивание в существующие корпоративные сети с использованием существующего аппаратного обеспечения.
При использовании Whb-приложений в сети интранет может использоваться архитектура, показанная на рис. 15.2. Сеть интранет в общем случае имеет различную внутреннюю структуру, построенную на принципах Интернет. Причем сеть интранеч может и не иметь выход в Интернет.
Сеть интранет строится на основе архитектуры распределенных приложений БД и архитектуры Web приложений. Напомним, что взаимодействие между распределенными компонентами такой сети осуществляется на аппаратном уровне на базе протокола TCP/IP, а на логическом уровне — на принципах, заложенных в протоколеHTTP.
В архитектуре интранет-сети сегменты могут иметь развитую структуру, обеспечивающую разграничение д с.ступа и конфиденциальность информации. Такая структура реализуется с помощью маршрутизаторов (устройств-коммутаторов, используемых для поиска необходимого узла сети), распределенных в пределах группы клиентов сети, либо путем использования центрального маршрутизатора и многочисленных коммутаторов.
Рис.
15.2. Схема функционирования Web-приложения
с использованием
модулей
расширения
В качестве клиентских приложений в этой архитектуре выступают Web- обозревагели, которые обращаются с запросами к серверу БД или к серверу приложений черезWeb-сервер. В зависимости от используемой архитектурыWeb-сервер может находиться на сервере БД или на сервере приложений.
В функции Web-cepeepa в сети интранет входит обработка запросовWeb- обозревателей на получение информации из разделяемых БД, преобразование этих запросов (может выполняться модулями расширенияWeb-cepBepa) вSQL-запросы или другие форматы, понятные для сервера БД или сервера приложений.
Интранет-приложение предоставляет следующие дополнительные возможности:
• Реализация концепций удаленного доступа и управления. Концепция удаленного доступаподцазумевает возможность удаленного подключения к интранет-сети, то есть подключение к сети интранет из любого компьютера сети Интернет. Под удаленным управлениемпонимается подключение к локальной сети и выполнение функциональных операций по управлению ресурсами локальной сети с удаленного компьютера. Для реализации дистанционного управления необходимо наличие специального сервера удаленного доступа и специального программного обеспечения на удаленном компьютере;
Обеспечение доступа в Интернет клиентов сети. При этом становятся доступными услуги, предоставляемые сетью Интернет, связанные с возможностью получения свежей информации в различных сферах, становятся доступны услуги электронной почты, возможность обмена информацией с внешними информационными и деловыми источниками, а также использование приложений, находящихся в Интернете, использование Интернета для рекламы и т. д.
Простота создания и наращивания сети интранет позволяет быстро создавать локальные, защищенные сетевые системы с технологией клиент-сервер, доступные для быстрого освоения. Сеть интранет может быть построена на основе использован гяWeb-cepeepa в локальной сети или на основе услуг, предоставляемых внешнимWeb-сервером, находящимся в сети Интернет. Такие услуги, как правило, предоставляет провайдер, обеспечивающий возможность использования функций своегоWeb-cepeepa. Многие компании используют совмещенную структуруWeb-серверов. При этом сама локальная сеть строится с использованием собственногоWfeb-сервера, а выход в глобальную сеть осуществляется черезWcb-еервер провайдера, публикующий маркетинговую информацию компании.
Современные сети интранет имеют различное назначение и особенности конкретной реализации. При этом выделяют следующие принципы построения сетей интранет:
иерархическая архитектура интранет-приложений. При такой архитектуре информация размещается иерархически сверху вниз. Для этого создают узловые серверы, на которых размещается наиболее важная информация, используемая совместно несколькими отделами или подсетями. При этом серверы могут составлять иерархичес кую структуру. На верхнем уровне находится сервер с информацией, необходимой для клиентов всей сети, а на нижних уровнях иерархии находятся специализированные серверы, содержащие информацию, используемую для групп клиентов сети. Таким образом обеспечивается максимально быстрый доступ к любой внутрисете- вой информации и снижаются затраты на обновление корпоративной информации;
использование «двусторонней обратной связи» с клиентами сети для обработки их запросов. При этом процесс восстановления при сбоях или перерывах в работе происходит с использованием механизма транзакций. Интранет-приложения, построенные на основе этого принципа, называют транзакционными Web-приложениями. Их целесообразно использовать, к примеру, при создании Интернет-магазинов с помощью промышленных СУБД. При этом можно эффективно отслеживать осуществление всех операций цикла продажи товара (заказа товара, оплаты и доставки товара);
использование группового способа общения. В этом случае объединяются группы новостей с возможностью прямого обмена информацией между различными членами группы клиентов и разграничение доступа к информации для пользователей вне группы.
Применение архитектуры Web приложений в сетях интранет по сравнению с традиционными архитектурами локальных сетей имеет следующие преимущества:
стандартизация пользовательского интерфейса —- использование обозревателя в качестве универсальной клиентской программы позволяет упростить процесс обучения пользователей и обсчуживания клиентских компьютеров;
более удобное администрирование и конфигурирование заключается в том, что в сети интранет вносимые в серверах приложений и серверах БД изменения не затрагивают клиентский уровень, то есть не надо вносить изменения в огромное количество компьютеров пользователей сети при изменений конфигурации БД (достаточно изменить текст сценария, хранящийся на Web-сервере);
•удешевление установки и лицензирования клиентских компьютеров пользователей сети интранет.
Для расширения возможностей клиентской части (обозревателя) и серверной части разрабатывают модули расширения обозревателя и сервера, используемые для динамического управления интерфейсными объектами (компонентами) Web-документа.
Последовательно рассмотрим взаимодействие Web-приложения с дополнительными компонентами: модулем расширения клиентской части и модулем расширения серверной части (рис. 15.1).
Web-приложения с модулями расширения сервера
Архитектура Web-приложений с модулями расширения сервера (рис. 15.3) может включать стандартные модули расширения —dll-библиотеки, реализующие, например, технологииASP, ЮС/НТХ, объектыActiveX. Кроме того, могут подключаться дополнительные модули, разработанные с использованием интерфейсовCGI, ISAPI и др.
В этом случае в функции Web-сервера входят обработка запросовWeb- обозревателей пользователей сети, вызов (загрузка) соответствующею модуля расширения сервера и передача ему параметров запроса. В результате обработки запроса модулями расширения сервера формируетсяWeb-документ с использованием различныхHTML-шаблонов. ГотовыйHTML-документ отсылаетсяWeb-обозревателю в формате протоколаHTTP.
Web-cepeep формирует динамическиWeb-страницы различными способами и отсылает готовыеWeb-страницы в формате протоколаHTTP.
IMIV
лои
Дчнамич«.жз«
бибгжлека
овита .Act»®X
HTTP
TCPdP
Рис. 15.3. Архитектура Web-приложения с модулями расширения сервера
Различают пассивное и активное состояние Web-cepeepa. Так,Web-cepeep находится в пассивномсостоянии, если формируемый им документ содержит статическую информацию, то есть наWeb-странице отсутствуют средства ввода и обработки запросов к серверу.
В активномсостоянииWeb-сер вер находится при динамическом созданииWeb-документов в ответ на запрос пользователя (рис. 15.3) или в случае, когда в обозреватель загружены различные интерактивные элементы формы. Для публикации БД основной интерес представляет активныйWfeb-сервер, реализуемый с помощью моду.чей расширенияWeb-cepeepa.
Для организации связи программных расширений Wfeb-сервера с БД используются также современные интерфейсы доступа к даннымOLE DB, ADO иODBC. Эти интерфейсы являются промежуто шым уровнем между источником данных и приложением, в качестве которого выступают программные расширенияWeb-cepeepa.
Для создания модулей расширения Wfeb-сервера могут использоваться интерфейсыCGI, WinCGI или интерфейсы программированияAPI.
Интерфейс CCI является стандартным протоколом взаимодействия междуWeb-сервером и модулями расширения, которые могут применяться для выполнения дополнительных функций, не поддерживаемых сервером. Например, такие модули используются для обработки получаемой от пользователя информации, динамического формированияWeb-документа, публикации БД наWeb-странице и т. д.
Напомним, что интерфейсу CGI соответствуют обычные консольные приложения операционной системыDOS. Обмен информацией между сервером
и модулем расширения осуществляется с помощью стандартного потокового ввода/вывода, передача управляющих параметров может организовываться через переменные окружения операционной системы или через параметры URL-адреса модуля расширения.
WinCGI протокол отличается от протоколаCGI только тем, что управляющие параметры передаются черезINI-файл, а входной и выходной потоки данных перенаправлены в специальные файлы.
Для написания CGI-программ подходит практически любой язык программирования, обеспечивающий доступ к переменным среды и ввод-вывод через стандартные потокиSTDIN иSTDOUT. Для написанияCGI-программ подходят среды разработкиC++Builder, Delphi, Visual С++ иJava. Кроме того, для этих целей можно использовать интерпретаторы языковPerl, PHP, предназначенные для различных интерфейсовWeb-серверов.
Для запуска CGI-модуля обозреватель должен сформировать запрос к серверу с указанием адресаURL этого модуля.
Для запуска модуля расширения можно использовать следующие способы:
задание адреса URL модуляCGI в строке адреса обозревателя;
посылка обозревателем серверу запроса на выполнение CGI-модуля при выборе полгьзователем ссылки, атрибут«href» которой содержит адрес этого модуля;
нажатие кнопки типа «Submit», входящей в форму, у которой атрибут«Action» содержит адресURL CGI-модуля.
После передачи запооса обозревателя CGI-приложению сервер передает ему также данные из командной строки запроса.CGI-приложение формирует ответ и помещает его в выходной поток (на стандартном устройстве вывода), затем сервер посылает этот ответ с использованием протоколаHTTP обратно обозревателю. В случае параллельной обработки нескольких запросов сервер запускает отдельный процесс для обработки каждого запроса. Причем для каждого процесса создается копия модуля расширения в памяти компьютера, на котором находитсяWeb-сервер. Поэтому недостатками этого протокола является невысокая скорость обработки запросов и повышенная загрузкаWeb-сервера.
При большом размере исполняемого CGI-файла сильно увеличивается время отклика сервера на запрос обозревателя, поскольку потребуется время для загрузки модуляCGI с диска в память. Причем, еслиCGI-програм- ма является интерпретируемой (например, написана на языке РНР илиPerl), она будет выполняться еще медленнее, так как в этом случае, кроме загрузки модуляCGI, загружается интерпретатор РНР илиPerl и производится интерпретация команд. При наличии сотен или тысяч обращений к серверу произойдет запуск сотен или тысячCGI-программ соответственно, каждая из которых будет обрабатывать соответствующий запрос обозревателя.
Отметим, что в некоторых операционных системах, в частности Unix, могут повторно использоваться уже загруженные программные коды моду чяCGI первого процесса, создавая для каждого нового обращения только свой экземпляр данных.
WinCGl протокол отличается от протоколаCGI тем. что управляющие параметры передаются черезINI-файл, а входной и выходной поток данных перенаправлены в специальные файлы. Этот протокол является реализацией протоколаCGI для операционной системыWindows 3.1. Сервер передает данныеCGI-программам черезINI-файлWindows в формате «параметр-значение». ПрограммаWinCGl читает этот файл и получает все данные, передаваемые ей из формы и автоматически генерируемые обозревателем.
INI-файлWindows состоит из нескольких специальных секций, в которых находятся различные параметры в виде текстовых строк. В системных секциях, которые автоматически генерируются обозревателем, находится информация о типе доступа, составных элементахURL-запроса, с помощью которогоWinCGI- модуль был загружен. Там же находится информация для настройки работыWinCGI-модуля, информация о сервере, путь к файлу, в который помещаются данные, отсылаемые сервером клиенту после выполненияWinCGI-модуля, «дополнительные» параметры, которые включены вURL-запрос. В остальном функционирование этого интерфейса аналогично интерфейсуCGI.
Более перспективными интерфейсами для разработки дополнительных модулей расширения Web-cepeepa являются интерфейсыISAPI/ NSAPI. При использования этих интерфейсов модули расширения реализуются в виде библиотекDLL. Рассмотрим принципы функционирования модулейISAri.
Запуск модуля расширения выполняется сервером в ответ на первый запрос обозревателя (в случае CGI-интерфейса загрузка осуществляется каждый раз) на загрузкуURL-адреса этого модуля. Загрузка модулеи15АР1 осуществляется теми же способами, что и загрузка модулейCGI. Обмен информацией между сервером и модулем расширения осуществляется с помощью специальных объектовRequest иResponse. Сервер передает параметры запроса модулю расширения с помощью объектаRequest и получает сформированныйWeb-документ с помощью объектаResponse.
В многопользовательском режиме работы сервера при обработке сервером последующих запросов к модулю расширения сервер использует уже загруженный экземпляр динамической библиотеки. Такой механизм взаимодействия сервера и модуля расширения обеспечивает экономию ресурсов сервера и увеличение скорости обработки запросов.
Однако использование интерфейса API требует от разработчика модуля расширения соблюдения особых мер по обеспечению устойчивости этого модуля к сбоям. При возникновении катастрофического сбоя потребуется перезапускWfeb-сервера.
Интерфейс ISAPI может применяться также для созданияISAPI-филь тров, которые, в отличие от модулейISAPI, могут использоваться для контроля всего потока данных между сервером и обозревателем на уровне протоколаHTTP. ISAPI-фильтры можно применять для динамической перекодировки, шифрования, сбора статистической информации о работе сервера.
Для уменьшения нагрузки на Web-cepeep часть функций, связанных с пред варительной обработкой запросов и введенных данных, целесообразно выполнять на стороне клиента (вWeb-обозревателе). Эту задачу решают моду ли расширения клиентской части. В следующем разделе рассмотрим основные особенности архитектурыWeb-приложений, использующих модули расширения обозревателя.
Web-приложения с модулями расширения клиентской части
В случае модулей расширения клиентской части (активность на стороне клиента) используют апплеты, подключаемые программы, ActiveX объекты и сценарии. Эти технологии могут использоваться для создания динамических эффектов при просмотреWeb-страницы. АрхитектураWeb- приложения с использованием модулей расширения клиентской части показана на рис. 15.4.
ТСРЛР
Рис.
15.4. Схема Web-приложения
с использованием модулей расширения
обозревателя
Элементы управления ActiveX представляют собой вид модулей расширения, которые могут использоваться на стороне клиента или на стороне сервера. Они реализуются с помощью динамических библиотекDLL и могут быть встроены вWeb-документ как дополнительные интерфейсные элементы. Механизм работы элементов управленияActiveX позволяет из программного кода этих объектов получать неограниченный доступ к локальным ресурсам компьютера пользователя. Из элемента управленияActiveX имеется возможность предавать на сервер любую информацию с компьютера пользователя. С точки зрения обеспечения безопасности локальных данных пользователей использование элементов управленияActiveX не всегда оправдано.
Исполняемые программыявляются первым поколением клиентских расширений. Для организации работы такой программы вWeb-приложении необходимо предварительно устанавливать такую программу и конфигурировать обозреватель. Поэтому при использовании механизма исполняемых программ очень трудно обеспечить совместимость такогоWeb приложения для различных обозревателей. Кроме того, использование такой технологии нарушает принцип стандартизации клиентского интерфейса.
Апплеты Java применяются для создания динамически формируемого интерфейса пользователя. Апплет представляет собой байтовый код, который интерпретируется виртуальнойJava-машиной, входящей в состав обо зревателя. У апплетов отсутствует возможность производить запись на диск пользователя. Поэтому использование механизма апплетов гарантирует целостность локальных данных пользователей.
Загрузка апплета производится при загрузке Web-документа. Принциг функционирования апплета включает возможность подключенияJava-классов, хранящихся на сервере. Гаким образом, сам апплет содержит только необходимый код, а при последующем взаимодействии пользователя с интерфейсными элементами апплета могут дополнительно подгружаться требуемыеJava-классы, реализующие дополнительные функции
Байтовый код апплета может начать выполняться сразу после загрузки в компьютер клиента или активизироваться с помощью специальных команд.
Используя библиотеку классов Java, можно создавать мультимедийные страницы и организовывать распределенные процедуры вычислений с использовавшем различных серверов и с использованием различных протоколов.
Используемый для выполнения апплетов интепретатор байт кода, входящий в состав виртуальной машины Java, имеет встроенную систему безопасности, блокирующую операции записи информации на диск и операции ад ресной арифметики.
Апплет может быть специализирован для работы с внешними базами данных. С этой целью в Java включены наборы классов для поддержки графического пользовательского интерфейса и классы для доступа к БД С помощыо
19 Зак. 474
\ этих классов апплет может получить от пользователя информацию ввода параметров запроса к базе данных.
Для включения дополнительного действия в Web-приложение достаточно включить тег апплета вWeb-документ и поместить апплет класс в библиотеку апплетов на сервере. При этом изменения в конфигурациюWeb- сервера вносить не нужно.
Для взаимодействия Java-апплета с внешним сервером баз данных разра ботан специализированный протоколJDBC 0ava DataBase Connectivity — совместимостьJava с базами данных), который построен на принципах интерфейсаODBC и применяется для стандартизации кодаJava-апплета при организации доступа к различным СУБД. ПротоколJDBC является посредником междуJava-кодом и драйверомODBC.
Сравним достоинства и недостатки использования технологии Java и наиболее распространенного в настоящее время интерфейсаCGI. Использование технологииJava-anmreTOB реализует более гибкий механизм. Апплет выполняется локально на машине пользователя, поэтому он может обеспечивать динамическое взаимодействие с пользователем гораздо быстрее. Кроме того, апплет может использоваться для выполнения функций, не доступныхCGI- модулю. Однако с точки зрения обеспечения безопасности данных компьютеров клиентов сети использованиеCGI-модуля более целесообразно, так какCGI-модуль выполняется на стороне сервера и получить доступ к ресурсам компьютера пользователя сети не может.
На этом мы закончим рассмотрение общих принципов построения Web- приложений и перейдем к рассмотрению архитектурыWeb-приложений, публикующих БД.