должен ли слой Service быть бином Spring? - PullRequest
1 голос
/ 22 апреля 2010

Может ли сервисный уровень быть Spring bean-компонентом?

Если так, как его можно получить из вызывающего приложения, потребителя сервиса?

Поскольку потребитель должен бытьПомните, что такой компонент существует, поэтому в любом случае он должен использовать Spring

для использования методов Service.

Ответы [ 3 ]

2 голосов
/ 22 апреля 2010

Делая ваших потребителей также пружинными бобами, добавьте в служебный бин инъекцию зависимостей.

2 голосов
/ 22 апреля 2010

Конечно.Сервисный уровень - это часть вашего приложения, которая видна другим пользователям (например, веб-уровень), поэтому его нужно где-то настраивать и настраивать.Imho, конфигурация Spring - лучшее место для размещения этой конфигурации. Пользователь Service Layer должен позаботиться о создании экземпляра этого контекста и получении необходимых ему объектов Service.

Альтернатива - если он должен работать автономно- для вашего класса (-ов) службы, реализующего интерфейс (-ы) уровня обслуживания, чтобы самим создавать экземпляр контекста приложения Spring.

1 голос
/ 23 апреля 2010

Да, всегда приятно настраивать служебные бины как весенние бины. В веб-слое вы должны позаботиться о создании необходимых сервисных объектов. Другой вариант заключается в том, чтобы сделать классы веб-слоя также пружинными компонентами и добавить необходимые служебные элементы. С точки зрения тестирования этот тип дизайна также очень полезен, когда мы используем среду тестирования Spring.

...