Схема проектирования доступа к данным

У меня есть несколько случаев, когда один объект имеет несколько таблиц в базовой базе данных.

При чтении или записи я хочу обрабатывать все запросы БД одним классом для этого объекта, например, класс SalesOrder имеет соответствующий класс SalesOrderQuery, и этот класс использует базовые таблицы Sales_Order_Header и Sales_Line.

Существует ли название шаблона проекта для этого подхода (класс, выполняющий упорство, а не классы, выполняющие сущности, сохраняются)

3 голоса | спросил PatrickSJ 6 WedEurope/Moscow2017-12-06T22:40:30+03:00Europe/Moscow12bEurope/MoscowWed, 06 Dec 2017 22:40:30 +0300 2017, 22:40:30

1 ответ


3

То, что вы описываете с помощью одного одиночного объекта и нескольких таблиц , на самом деле является совокупность :

  • Таблица Sales_Order_Header содержит соответствующий корень агрегата, объект порядка
  • Sales_Line соответствует объекту линии, принадлежащему агрегату, и к которому обращаются через корневой каталог

Образец дизайна, который вы ищете, представляет собой репозиторий для управления объекты в памяти, которые работают вместе с преобразователями данных

Если вы ищете ссылку, я бы рекомендовал отличную книгу Мартина Фаулера Шаблоны корпоративного приложения Архитектура , которая представляет все эти детали в полной мере и некоторые другие, например блок работы для записи связанных объектов в базу данных как часть транзакции db.

ответил Christophe 6 WedEurope/Moscow2017-12-06T23:55:01+03:00Europe/Moscow12bEurope/MoscowWed, 06 Dec 2017 23:55:01 +0300 2017, 23:55:01

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132