Слой запросов #
Васильев Андрей Михайлович, 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
- Запросу необходим доступ к репозиториям для работы с информацией
- Запросу передаются параметры:
- Какое количество информации необходимо получить
- По каким критериям необходимо выбирать данные
- Какие данные необходимо добавить
- Запрос возвращает результат