(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

BOLD - инструмент реализации MDA в Delphi. Часть 8. Работа с СУБД

Источник: КомпьютерПресс 2'2004
Константин Грибачев

Часть 7

Пример приложения с исходными текстами

Функции Persistence Layer

Уровень данных, который в Borland MDA называется Persistence Layer, предназначен для обеспечения реализации следующих основных функций:

• сохранение элементов (объектов и ассоциаций) объектного пространства (ОП) в долговременной памяти (как правило, на жестком диске, хотя для этой цели могут использоваться и любые другие устройства хранения - дискеты, flash-диски, CD/DVD-RW и т.д. при наличии стандартного доступа к ним из приложения). При этом сохраняются только те объекты и связи, для которых в модели приложения задано свойство Persistent;

• загрузка элементов объектного пространства из долговременной памяти;

• объектно-реляционное отображение, то есть преобразование объектной UML-модели в структуру реляционной базы данных;

• генерация схемы реляционной базы данных по имеющейся объектной модели;

• преобразование OCL-выражений в операторы SQL (так называемый механизм OCL2SQL).

В начало  В начало 

Структура и состав компонентов

На рис. 1 представлена схема, иллюстрирующая взаимодействие объектного пространства и уровня данных. Центральным элементом, организующим подобное взаимодействие, является дескриптор уровня данных. В качестве такого дескриптора может выступать как компонент BoldPersistenceHandleFileXML, предназначенный для сохранения ОП в XML-файле (мы уже использовали этот компонент при описании создания простого приложения), так и компонент BoldPersistenceHandleDB, предназначенный для организации взаимодействия с реляционными СУБД.

Для обеспечения работы с конкретными типами СУБД в состав компонентов BMDA включены специальные компоненты - адаптеры баз данных.

В рассматриваемой версии имеются следующие основные адаптеры баз данных:

• BoldDataBaseAdapterBDE - обеспечивает подключение к СУБД через Borland Database Engine;

• BoldDataBaseAdapterADO - обеспечивает подключение к СУБД через интерфейс ActiveX Data Objects(ADO);

• BoldDataBaseAdapterIB - обеспечивает подключение к СУБД Interbase;

• BoldDataBaseAdapterDBX - обеспечивает подключение к СУБД через интерфейс DBEXpress.

Кроме вышеперечисленных, предусмотрены адаптеры для организации взаимодействия с данными посредством SOAP (Simple Object Access Protokol), а также для СУБД DBISAM и для пакета SQLDirect. Впрочем, разработчик имеет возможность при необходимости создать собственный адаптер СУБД.

В начало  В начало 

Подключение к СУБД

Рассмотрим, как на практике происходит подключение к СУБД. Для этого используем ранее созданное приложение, состоящее из одной формы и модуля данных. Удалим из модуля данных компонент BoldPersistenceHandleFileXML, а вместо него добавим компоненты BoldPersistenceHandleDB1, BoldDatabaseAdapterIB1 с закладки BoldPersistence, а также компонент, представляющий базу данных Interbase, - IBDatabase1 (рис. 2).

Настроим добавленные компоненты, как показано на рис. 3. В компоненте IBDatabase1 зададим имя базы данных - TestDB.

Затем в инспекторе объектов настроим адаптер базы данных, в данном случае просто указав тип используемого диалекта SQL (рис. 4).

Для генерации базы данных запустим редактор моделей и из главного меню выберем подпункт Tools->Generate Database (рис. 5), после чего Bold обеспечит создание схемы БД в соответствии с нашей UML-моделью.

В начало  В начало 

Управление взаимодействием с СУБД с помощью BoldActions

В состав Borland MDA входят инструменты BoldActions - достаточно удобные средства для обеспечения автоматических действий по созданию баз данных и управления подключением к уровню данных на этапе выполнения приложения. Их применение осуществляется посредством стандартного Delphi-компонента ActionList. Поместим его на нашу форму и выберем действие TBoldIBDatabaseAction (рис. 6 и 7).

Это действие предназначено для генерации схемы базы данных СУБД Interbase. В инспекторе объектов можно настроить параметры этого действия, указав свойства генерируемой базы данных (рис. 8).

Кроме того, добавим еще два действия - TBoldActivateSystemAction (активизация объектного пространства) и TBoldUpdateDBAction (обновление базы данных). Поместим на форму три кнопки, при этом каждую из них свяжем с одним из вышеуказанных действий (рис. 9), и запустим приложение на исполнение.

Убедимся, что при нажатии кнопки Создать БД генерируется новая база данных, с помощью кнопки Подключить активизируется объектное пространство (отображается информация из БД и обеспечивается возможность ее редактирования), а посредством кнопки Обновить БД отредактированная или добавленная пользователем информация запоминается в базе данных.

В начало  В начало 

Заключение

На этом мы завершаем цикл статей о технологии Borland MDA, реализованной в программном продукте Bold for Delphi. К сожалению, в рамках журнальных публикаций было затруднительно охватить эту тему более детально, поэтому пришлось ограничиться лишь предварительным знакомством с ней. Однако даже полученной информации вполне достаточно для того, чтобы самостоятельно продолжить процесс изучения рассматриваемой технологии. Тем более что в настоящее время технология Bold for Delphi получила развитие и в других программных продуктах фирмы Borland - в уже вышедшей версии Borland C#Builder Architect и в планируемой к выпуску версии Delphi 8 for Microsoft .NET. В эти программные продукты интегрирована технология Borland Enterprise Core Objects (ECO), которая по сути представляет собой перенос (пока частичный) Bold на платформу Microsoft .NET.

Причины повышенного внимания компании Borland к инструментарию реализации MDA-архитектуры вполне объяснимы - даже из примеров, приведенных в данном цикле статей, становится ясно, сколь значительно с применением этой технологии повышается эффективность разработки приложений, использующих базы данных. Десятки компаний - разработчиков программного обеспечения уже давно и с успехом применяют Bold for Delphi при разработке информационных систем. И, если судить по отзывам специалистов, их производительность труда при этом повышается в 10 раз.

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

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 26.06.2007 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
ABViewer Standart пользовательская
Bamboo
Microsoft Office для дома и учебы 2019 (лицензия ESD)
SmartBear AQtime Pro - Node-Locked License (Includes 1 Year Maintenance)
SmartBear QAComplete Concurrent User Subscription License - On Premise (1 Year Subscription)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Программирование в AutoCAD
СУБД Oracle "с нуля"
Corel DRAW - от идеи до реализации
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100