Пример приложения Acme Travel Agency (Туристическое
агентство Acme)
К этому моменту мы изложили более чем
достаточно материала, необходимого для
понимания классов Customer (Клиент) и HotelBroker (Посредник,
бронирующий места в гостинице) из версии
приложения Acme Travel Agency (Туристическое
агентство Acme), ориентированной на работу с
базами данных. Как обычно, файлы с исходным
кодом для этой версии находятся в папке
CaseStudy. Если вы использовали программы,
изменяющие содержимое базы данных HotelBroker (Посредник,
бронирующий места в гостинице), не забудьте
запустить макрос SQL, приводящий эту базу в
исходное состояние.
В связи с тем, что у нас не было необходимости хранить какое-либо состояние
объекта Customer (Клиент), в нем для доступа к базе данных и получения данных
используется объект SqlDataReader Любое состояние, которое может понадобиться
программе (например, список клиентов), легко может быть получено у программы-клиента,
а не у объекта среднего яруса. Объекты HotelBroker (Посредник, бронирующий места
в гостинице) и HotelBookings немного более сложны. Как уже было сказано, из
педагогических побуждении эти объекты были реализованы с использованием объекта
Data-Set (Набор данных). Так сделано для того, чтобы продемонстрировать использование
этой технологии в приложениях. Тем не менее, мы увидим, что при разработке Web-ориентированых
приложении есть причины сохранять некоторые состояния в среднем ярусе. В этом
случае объект DataSet (Набор данных) служит интеллектуальным кэшем.
А теперь отвлечемся от примера и
рассмотрим интеграцию ХМL с базой данных.
Содержание раздела