Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Разработка информационной системы с трехзвенной (трехуровневой) архитектуройТрехзвенная архитектура является примером многозвенной архитектуры и включает в себясовместную работу приложений-клиентов, серверов приложений и серверов баз данных. Трехзвенная архитектура предполагает использование приложения-клиента (его часто называют "тонкий клиент"), сервера приложений, берущего на себя централизованную обработку данных и сервера баз данных. Иногда к трехзвенным приложениям относят информационные системы с локальными базами данных у которых третьим звеном являются просто файлы БД. Рассмотрим пример создания приложения трехзвенной архитектуры в Delphi с использованием Socket-соединения. В качестве третьего звена – файлы БД Paradox. 1. С помощью утилиты DataBase Desktop создать БД Paradox. Структуру БД можно взять из примеров главы 8: таблицы «Потребитель», «Товар», «Потребительская корзина». Используя BDE Administrator, установить псевдоним Potreb для базы данных. 2. Создать новое приложение в Delphi. 3. Создать объект Remote Data Module (File/New/Multitier). ClassName называем Server. В окно, названное Server поместить компоненты: DataBase, 3 объекта Table и три объекта DataSetProvider. 4. Для компонента DataBase установить следующие свойства:
5. Для компонентов Table установить следующие свойства:
6. Для компонентов DataSetProvider установить:
7. Сохранить модуль Unit1 под именем RS0, модуль Unit2 под именем RS2, а сам проект под именем Rserver (лучше всего командой SAVE ALL). 8. Запустить программу Rserver. Закрыть приложение. Запустить утилиту SCKTSRVR.EXE из каталога C:\Program Files\Borland\Delphi5\Bin. 9. Создать новое приложение, которое будет выполнять функции клиента. 10. Разместить на нем компоненты: SocketConnection, по 3 компонента ClientDataSet, DataSource, DBGrid, DBNavigator и 3 кнопки Button (закладки DataSnap, DataAccess и др.). 11. Для свойства Host компонента SocketConnection установить имя сетевой машины, на которой расположен клиент, либо, если сервер приложений и приложение-клиент расположены на одном компьютере, прописать localhost, а также:
12. Для ClientDataSet:
13. Для DataSource установить DataSet= ClientDataSet1, ClientDataSet2 или ClientDataSet3, а DBGrid и DBNavigator настроить на объект DataSource. 14. Для проверки доступа к таблицам свойство Active объектов ClientDataSet устанавливаем в TRUE, потом снова переключаем в FALSE. 15. При запуске приложения-клиента лучше активизировать соединение после запуска программы, поэтому устанавливаем свойство SockedConnecton1.Connected в значение FALSE. Кнопку Button1 программируем командами активизации соединения: ClientDataSet1.Active:= true; ClientDataSet2.Active:= true; ClientDataSet3.Active:= true; Кнопка Button2 служит для отключения от сервера приложений. Ее можно запрограммировать так: ClientDataSet1.Active:= false; ClientDataSet2.Active:= false; ClientDataSet3.Active:= false; Кнопку Button3 будем использовать для пересылки данных на сервер приложений. Используем метод ApplyUpdates (его параметр определяет количество попыток обращения к серверной таблице). Программный код: ClientDataSet1.ApplyUpdates(0); ClientDataSet1.Close; ClientDataSet1.Open; Аналогичные команды для ClientDataSet2 и ClientDataSet3. 16. Сохранить приложение и запустить его. 17. Внешний вид модуля работающего сервера приложений для нашей задачи – пустая форма, для приложения-клиента внешний вид аналогичен примерам раздела 8.
|