You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Веб-приложение с микросервисной архитектурой на Java Spring
Приложение состоит из нескольких микросервисов, которые могут работать сами по себе:
Микросервисы со всей бизнес-логикой. Микросервис для работников, для комментариев и для задач.
Сама бизнес-логика включает в себя MessageListener'a для получения сообщений из брокера посредством RabbitMQ, обработку запросов и сервисов, которые уже с помощью репозитория выполняют соответствующий запрос. Бизнес логика работает с самими сущностями, но в DAL и PL используются Dto.
На уровне представления находятся вся логика, с которой уже может взаимодействовать пользователь: контроллеры, в которых с помощью Spring Security происходит аутентификация и авторизация, обработка HTTP запроса и отправка сообщения в брокер.
В Data Access Layer происходит обращения к данным, которые хранятся в БД.
В RabbitMQ передаются не JPA сущности, а Dto, для преобразования которых есть кастомные мапперы, которые находятся в модуле вместе с сущностями.
Для более удобной работы с Базой Данных используются миграции Flyway.
Для всех созданных классов сделан интерфейс Swagger.
Идея приложения: сервис для сотрудников компании N, в котором администратор может добавлять и делать другие дейтсвия с пользователями. Сами же пользователи привязаны к определенным сотрудникам, что дает возможность добавлять новые задачи и комментарии, а также иметь возможность просмотреть, удалить или отредактировать задачи, комментарии.
Инструменты, использовавшиеся при разработке проекта: