Должен ли я создать несколько сервисов (используя стереотип Spring `@ Service`) для поиска в базе данных для разных контроллеров? - PullRequest
0 голосов
/ 26 августа 2010

Я не уверен, где искать базу данных для контроллеров Spring.

Кажется, имеет смысл использовать стереотип Spring @Service и создать несколько «сервисов» для обеспечения поддержки поиска контроллеров, а не выполнять поиск непосредственно в контроллерах.

Это правильно или есть более подходящее место для поиска в базе данных?

1 Ответ

2 голосов
/ 26 августа 2010

Я не думаю, что контроллеры должны выполнять поиск в базе данных. Если вы откажетесь от своего веб-уровня, функциональность поиска исчезнет.

Я бы поставил их за слой интерфейсов репозитория. Вы можете проверить их без веб-уровня таким образом. Также может быть отдельный уровень обслуживания, который владеет единицами работы и транзакций. Поиски должны быть доступны только для чтения, поэтому они могут быть достаточно безопасными для прямого вызова с контроллеров.

Это рекомендуемая идиома Spring.

...