Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Создание Интернет-ориентированных и клиент-серверных программ




  • Основы инструментария для создания Интернет-систем в Delphi
  • Обработка запросов на получение Web-страниц
  • Понятие действия
  • Добавление нового действия
  • Генератор страниц (компонент TPageProducer)
  • Использование шаблонов при формировании ответа
  • Получение параметров клиентских запросов (Класс TCGIRequesf)
  • Формирование параметров серверного ответа (класс TCGIResponse)
  • Работа с базами данных и генерация таблиц.
  • Подключение базы данных
  • Невизуальные объекты для работы с БД
  • Программная реализация информационной системы на базе Web-технологий
  • Анализ и построение интерфейсов объектов
  • Класс, осуществляющий разбор сведений, содержащихся в запросе
  • Классы, генерирующие содержимое основных информационных страниц.
  • Реализация фрагмента информационной системы
  • Демонстрация работы серверного модуля

В предыдущей главе был описан CGI "изнутри". Использование этого интерфейса позволяет строить небольшие программы, которые предназначены для обработки пользовательских запросов и формирования динамических Web-страниц.

Когда в рамках одного сайта нужно генерировать одну-две страницы, то создание интерактивной части такого ресурса займет немного времени, и это можно сделать классическими средствами. Однако если создается целая информационная система и в ведении программиста находятся уже не конкретные задачи по обработке получаемых сведений, а методология обработки данных, если при развитии ресурса число интерактивных элементов постоянно возрастает, то один человек уже не в силах самостоятельно охватить и контролировать все потоки информации.

В таких случаях прибегают к средствам моделирования. Созданные модели должны описывать не процессы, происходящие на низком уровне, вроде получения содержимого переменных окружения или отправки заголовков, а абстракции, представляющие собой инструмент управления информационными ресурсами.

В гл.5 был затронут язык UML, который обеспечивает всесторонний анализ данных и построение на базе этого аначиза программных комплексов. Насколько нам известно, основной производитель средств для работы с языком UML — фирма Rational Software, не позаботилась о создании приложения для работы с языком Object Pascal — ядра Delphi, и поэтому прямая генерация кода на основании описанных диаграмм невозможна. Однако, к счастью для разработчиков, подход, примененный в Delphi к созданию Интернет-систем, обеспечивает гибкое, быстрое и высокоэффективное строительство информационных систем любого масштаба.

 

Основы инструментария для создания Интернет-систем в Delphi

Для создания серверных программ в Delphi предусмотрен специальный мастер, действие которого тривиально: создается объект для разбора пользовательского запроса и запуска процедуры его обработки. Давайте создадим новый проект серверного модуля. Для этого выбираем следующую последовательность меню: File | New. Вам в этом случае предоставляется выбор, приведенный на рис. 10.1.

Рис. 10.1. Выбор типа создаваемого приложения

В появившемся окне New Items нужно выбрать объект Web Server Application.

Если у вас нет этого типа приложения, то это значит, что установлена версия Delphi Professional или Standard Edition. Для работы со средствами, предназначенными для написания сетевых приложений, нужно установить Client/Server Suit или Enterprise, в зависимости от номера версии пакета. В дальнейшем, если это не оговорено специально, речь будет идти об общих для различных версий Delphi возможностях. Под версией 3.0 будет также подразумеваться версия 2.0, а под 5.0 — версия 4.0.

После выбора типа приложения необходимо определить программное окружение, в котором будет работать Web-модуль. Кроме обычного (стандартизированного) варианта CGI существуют несколько вариантов реализации этого шлюза. В частности, некоторые производители серверов изменяют способы организации приема-передачи информации (посредством использования не переменных окружения, а файлов, например) от самого серверного модуля к серверному окружению, однако это почти не затрагивает функциональной составляющей программы. Меню выбора типа Web-приложения осуществляется по нажатии кнопки ОК в диалоговом окне, приведенном на рис. 10.1. В появившемся меню выберите пункт CGI Stand-alone Executable. После нажатия клавиши ОК будет создан проект, который желательно сразу сохранить. Можно размещать файлы проекта в любом другом месте жесткого диска, но при этом следует указать каталог cgi-bin Web-сервера в качестве выходного для создаваемых ЕХЕ-файлов (Output Directory). Все это делается для облегчения последующей отладки серверных модулей.

В сформированной рабочей среде, в отличие от обычных настольных проектов, нет формы в классическом понимании. Вид этой среды по умолчанию для Delphi версии 6.0 представлен на рис. 10.2.

Вместо обычной формы здесь присутствует контейнер для невизуальных компонентов. Этот контейнер представляет собой объект класса TWebModule, со своими свойствами и событиями, которые можно редактировать посредством окна редактора свойств объекта Object Inspector. Данный Web-модуль является центральным звеном любого серверного приложения, поскольку именно он отвечает за получение HTTP-запроса и запуск его обработчика.

Аналогично формам и визуальным компонентам, в этот Web-модуль можно помещать невизуальные компоненты, например, для работы с базами данных.

Рис. 10.2. Вид рабочей области в Delphi 6.0

Рис. 10.3. Отображение Web-страницы

За генерацию Web-страниц отвечает компонент TWebProducer, значок которого находится на вкладке Internet Component Palette.

Реализуем с использованием этого компонента Web-страницу, которая представлена на рис. 10.3.

Для того чтобы эта страница была предоставлена пользователю, необходимо создать объект, который будет отвечать за.ее передачу. Работа с такими объектами описывается ниже.

 

Обработка запросов на получение Web-страниц

При создании серверных модулей программист предусматривает, как правило, динамическое создание Web-страницы на основании клиентского запроса. Этот запрос может включать какие-либо сведения, учитываемые или обрабатываемые серверным модулем, либо просто определяющие методику построения страницы из заранее заготовленных объектов. Вообще говоря, удобно создавать страницы на основании HTML-шаблонов, но об этом чуть позже.

 

Понятие действия

Итак, при создании CGI-модуля с использованием визуальных средств Delphi программист должен, прежде всего, определить варианты поведения или, назовем иначе — действия. Действие —это набор операций, которые осуществляет модуль при получении некоторого запроса от клиента. Каждое действие вводится как элемент массива всех действий данного модуля и описывается следующими свойствами (табл. 10.1).

Таблица 10.1. Свойства действия

Свойство Описание
Default Определяет, вызывается ли данное действие по умолчанию
Enabled Определяет включение/отключение действия
MethodType Определяет тип HTTP-запроса, который может быть обработан данным действием
Name Содержит название действия
Pathlnfo Содержит строку URL, по получении которой, активизируется это действие
Producer Содержит имя объекта, отвечающего за генерацию и отправку страницы
OnAction Название процедуры, вызываемой при активизации данного. действия

Эти свойства определяют уникальные характеристики действия.




Поделиться с друзьями:


Дата добавления: 2014-12-29; Просмотров: 367; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.