Слой запросов

Слой запросов #

Васильев Андрей Михайлович, 2022

Версии презентации


Архитектура веб-приложения #

flowchart TB user("Пользователь") view["Слой представления"] business["Слой предметной области"] storage["Слой хранения данных"] fs[("Файловая система")] db[("Базы данных")] dataSources(["Источники данных"]) user --> view view --> business business --> storage storage --> fs storage --> db storage --> dataSources


Слой предметной области #

Задачи слоя предметной области:

  • Выполнение любых операций над данными: добавление, модификация, удаление
  • При выполнении операций контролируется корректность структуры данных
  • Операции выполняют сложные манипуляции над наборами данных

Организация слоя в формате запросов #

flowchart LR handler["HTTP-обработчик"] query("Запрос") repoOne["Репозиторий #1"] repoTwo["Репозиторий #2"] handler -- вызывает --> query query -- использует --> repoOne query -- использует --> repoTwo

  • Запросу необходим доступ к репозиториям для работы с информацией
  • Запросу передаются параметры:
    • Какое количество информации необходимо получить
    • По каким критериям необходимо выбирать данные
    • Какие данные необходимо добавить
  • Запрос возвращает результат

© A. M. Васильев, 2022, CC BY-SA 4.0, andrey@crafted.su