Архитектура слоя Spring Boot - PullRequest
2 голосов
/ 07 марта 2020

Я внедряю службу REST с Spring Boot, и у меня есть архитектурное сомнение:

У меня есть @RestController (уровень контроллера), где я проверяю и принимаю параметры запроса моей службы.
I у меня есть @Service (бизнес-уровень), где я получаю некоторую информацию из других сервисов REST и применяю некоторые logi c, чтобы вернуть их контроллеру.

Мой вопрос: где лучшее место или слой для записи логики c для осуществления вызова к другим службам REST и получения от них нужных мне объектов?

Я подумываю создать еще один слой, в котором посредством внедрения зависимостей я предоставляю информацию в @Service, это нормально? Есть ли лучший способ сделать это? Какой стереотип аннотации подойдет для этих классов?

1 Ответ

0 голосов
/ 08 марта 2020

Мне нравится принцип инверсии зависимостей.

1) Создайте интерфейс с ожидаемым baheviour.
2) Создайте реализацию его как службы, которая сопоставляется с внешней зависимостью.
3) Вставьте зависимость интерфейса в бизнес-уровень и используйте Это.

...