Задать вопрос
Tokishu
@Tokishu
А как?

Куда вынести getCurrentUser?

Вот пишу свой первый проект в SpringBoot дабы набить руку.
И вот при создании UserService я заметил что у меня есть функция getCurrentUser которой пользуются другие сервисы (для проверки прав, владения и т.д.) а также getCurrentUserResponse (возвращает уже в виде Response, дабы контроллер вывел ответ)
И тут как раз возник вопросик, не стоит ли вынести getCurrentUser куда-то в другое место? может утилиту? но я слышал что утилитам лучше не брать самостоятельно данные из репозитория, или может вовсе в AuthService? (у меня там логика регистрации и авторизации пользователя которая опять же возвращается в UserService для создания пользователя).
  • Вопрос задан
  • 149 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Tokishu
@Tokishu Автор вопроса
А как?
Итак, дабы избежать повторения кода (каждый раз запрашивать пользователя в сервисе) лучше передавать в контроллере пользователя с аннотацией @AuthenticationPrincipal, лично по моему мнению это наиболее хорошее решение.
Или, если я хочу возвращать актуальные данные из бд (а я хочу) попробовать создать свою аннотацию по типу @CurrentUser
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
xez
@xez
TL Junior Roo
По этому описанию трудно точно сказать.
"В утилиту" - точно нет. Вообще утильные классы - это не ооп-путь.
Чтобы вернуть "в виде Response" можно замапить и в контроллере.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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