
- •1. Технологии публикации баз данных
- •1.1. Сценарии JavaScript, jScript и vbScript
- •1.2. Элементы управления ActiveX
- •1.3. Апплеты и сервлеты Java
- •1.4. Интерфейсы cgi и WinCgi
- •1.5. Интерфейсы isapi/nsapi
- •1.6. Asp, php и idc/htx-страницы
- •1.7. Формирование Web-страниц
- •1.8. Интерфейсы ole db, ado, odbc
- •1.9. Статическая публикация бд
- •1.10. Динамическая публикация бд
- •1.12. Протоколы передачи данных
- •1.13. Универсальный указатель ресурсов
- •3. Расширяемый язык разметки xml
- •3.1. Составляющие xml-документа
- •3.2. Информационные объекты
- •3.3. Определение типа документа
- •3.4. Xml как средство обмена данными
- •4. Программа xml Mapper
Лекция 13
Технологии публикаций баз данных в Интернете
Введение
1. Технологии публикаций баз данных
1.1. Сценарии JavaScript, JScript и VBScript
1.2. Элементы управления ActiveX
1.3. Апплеты и сервлеты Java
1.4. Интерфейсы CGI и WinCGI
1.5. Интерфейсы ISAPI/NSAPI
1.6. ASP, PHP и IDC/HTX-страницы
1.7. Формирование Web-страниц
1.8. Интерфейсы OLE DB, ADO, ODBC
1.9. Статическая публикация БД
1.10. Динамическая публикация БД
1.11. Web-приложения
1.12. Протоколы передачи данных
1.13. Универсальный указатель ресурсов
2. Расширяемый язык разметки XML
2.1. Составляющие XML-документа
2.2. Информационные объекты
2.3. Определение типа документа
2.4. XML как средство обмена данными
3. Программа XML Mapper
Введение
Публикация баз данных в Интернете — это размещение информации из баз данных на Web-страницах сети. Отметим, что такая публикация связана с решением следующих типичных задач, возникающих перед разработчиками современного программного обеспечения:
организация взаимосвязи СУБД, работающих на различных платформах;
построение информационных систем в сети Интернет на основе многоуровневой архитектуры БД (архитектура таких систем включает дополнительный уровень — Web-сервер с модулями расширения серверной части, который и реализует возможность информационного обмена и публикации БД в глобальной сети);
построение локальных интранет-сетей на основе технологии публикации БД в Интернете (локальные сети строятся на принципах Интернета с выходом при необходимости в глобальную сеть);
использование в Интернете информации из существующих локальных сетевых баз данных (при необходимости опубликования в глобальной сети информации из локальных сетей);
применение БД для упорядочивания (каталогизирования) информации (огромный объем данных, представленных в Интернете, не обладает требуемой степенью структурированности, что делает процесс поиска необходимой информации весьма сложным и долгим);
применение языка SQL для поиска необходимой информации в БД;
использование средств СУБД для обеспечения безопасности данных, разграничения доступа и управления транзакциями при создании интернет-магазинов, защищенных информационных систем и т. д.;
стандартизация пользовательского интерфейса на основе применения Web-браузеров с типовым внешним видом и типовой реакцией на действия пользователя;
использование Web-браузера в качестве дешевой клиентской программы для доступа к БД.
Размещение информации из БД в Интернете представляет собой новую информационную технологию, получившую широкое распространение в последнее время в связи с ростом популярности и доступности "глобальной паутины". В данной главе мы рассмотрим основные элементы интернет-технологий, являющиеся основой для разработки Web-приложений.
В Интернете вся информация размещается на Web-страницах, для написания которых используются язык HTML (HyperText Markup Language — язык разметки гипертекста) или его расширения, такие как DHTML (Dynamic HTML — динамический HTML) и XML (extensible Markup Language — расширяемый язык разметки). В содержимое Web-страницы может входить текстовая информация, ссылки на другие Web-страницы, графические изображения, аудио- и видеоинформация и другие данные. Web-страницы хранятся на Web-сервере.
Для доступа к Web-страницам используются специ&тьные клиентские программы — Web-браузеры (программы просмотра), находящиеся на компьютерах пользователей. Браузер формирует запрос на получение требуемой страницы или другого ресурса с помощью специального адреса URL (Uniform Resource Locator — унифицированный указатель ресурса). Этот адрес определяет тип протокола для передачи ресурса, имя домена, используемое для доступа к Web-узлу, номер порта, локальный путь к файлу и дополнительные аргументы. Соединение с Web-узлом устанавливается с помощью протокола передачи данных HTTP (Hyper Text Transfer Protocol — протокол передачи гипертекста).
Для расширения возможностей клиента (браузера) и Web-сервера создаются соответствующие программы расширения. Схема взаимодействия клиента и Web-сервера с использованием программ расширения приведена на рис. 13.1.
Компьютер пользователя Сервер
Рис. 13.1. Схема взаимодействия браузера и Web-сервера
При организации такого взаимодействия могут использоваться следующие средства:
сценарии (скрипты), подготавливаемые на различных скриптовых языках (JavaScript, JScript и VBScript) и вставляемые в Web-документ;
апплеты и сервлеты, написанные на языке Java;
элементы управления ActiveX;
консольные исполняемые программы, реализованные с использованием интерфейса CGI;
исполняемые программы, реализованные с использованием интерфейса WinCGI;
динамические библиотеки, реализованные с использованием интерфейса ISAPI;
динамические страницы IDC/HTX;
активные серверные страницы ASP.
Дадим краткую характеристику каждого из названных средств.
1. Технологии публикации баз данных
1.1. Сценарии JavaScript, jScript и vbScript
Сценарии (скрипты), написанные на языках JavaScript, JScript или VBScript, используют для динамического управления интерфейсными объектами (компонентами) Web-документа. Эти языки являются языками интерпретируемого типа, т. е. исполняемый файл не создается, а код выполняется непосредственно в процессе интерпретации. Интерпретация и выполнение сценариев осуществляется браузером или Web-сервером. Скрипты рассматриваются как расширение языка HTML и могут включаться в тело HTML-документа. Часть сценария может исполняться во время загрузки документа, а часть сценария, реализованная, как правило, в виде функции, выполняться в ответ на действия пользователя. Использование того или иного языка сценариев определяется типом применяемого браузера.
Язык JavaScript представляет собой объектно-ориентированный язык с С-по-добным синтаксисом. Сценарии на JavaScript используются в браузере Netscape Navigator, а сценарии на языке JScript — в Internet Explorer. Лексика и синтаксис этих языков практически идентичны, различия заключаются в объектных моделях, используемых браузерами (совокупностях элементов, их атрибутов и событий Web-документа). Internet Explorer дополнительно поддерживает язык VBScript, функционально эквивалентный языку JScript, но более простой в освоении. Этот язык наиболее привычен для программистов, имеющих опыт работы с Microsoft Visual Basic.
Сценарии могут применяться как расширение браузера (клиентское расширение) или как расширение Web-сервера. В первом случае сценарии включаются в Web-документ и используются для создания динамических эффектов при просмотре Web-страницы, а во втором они требуются для динамического создания Web-документов в ответ на запрос пользователя. Для уменьшения нагрузки на Web-сервер часть функций, связанных с предварительной обработкой запросов и введенных данных, целесообразно выполнять на стороне клиента (в Web-браузере). В этом случае говорят об активности на стороне клиента. Кроме сценариев, такая активность может быть реализована и другими средствами (апплеты Java, элементы управления ActiveX).
1.2. Элементы управления ActiveX
Элементы управления ActiveX представляют собой модули расширения, которые могут использоваться и на стороне клиента, и на стороне сервера. Они реализуются с помощью динамических библиотек DLL и встраиваются в Web-документ как дополнительные интерфейсные элементы. Механизм работы элементов управления ActiveX позволяет получать с их помощью неограниченный доступ к локальным ресурсам компьютера пользователя, включая возможность передачи на сервер любой информации с этого компьютера. Поэтому использование элементов ActiveX на стороне клиента в сети Интернет не всегда оправдано с точки зрения обеспечения безопасности данных.
Код объектов ActiveX может содержать вирус. Если загрузить такой объект, то компьютеру клиента в принципе может быть причинен вред. Для частичного устранения этого недостатка компания Microsoft добавляет в свои программы цифровую подпись (signing), которая гарантирует "чистоту" объектного кода. Кроме того, браузер Internet Explorer способен идентифицировать "подозрительные" модули и выдает при необходимости предупреждающее сообщение, предоставляя пользователю возможность отменить выполнение кода. Однако этот механизм не устраняет целиком опасность заражения вирусом компьютеров пользователей, использующих объекты ActiveX.
Если в вызванной Web-странице встречаются новые элементы управления ActiveX, то их предварительно требуется загрузить и установить, а это нарушает универсальность браузера. Поэтому элементы управления ActiveX рекомендуется использовать преимущественно на стороне сервера.