Имейте в виду, что при создании WAR с вашим приложением все необходимые модули будут помещены в WEB-INF/lib
вместе с зависимостями Spring (требуется для модуля MVC).Таким образом, модуль, в котором размещаются ваши сервисы, может иметь зависимость от Spring-context (содержащий аннотации), поскольку модуль MVC сам требует этой зависимости, поэтому он все равно будет помещен в окончательный пакет.Если вы используете maven, он будет автоматически обрабатывать все под капотом.
Однако, если вы не хотите, чтобы зависимости зависали, потому что, например, ваш «сервисный модуль» развернут как отдельный,Пакет без Spring, вы можете использовать JSR330 @Inject
, @Resource
и @Qualifier
Java-аннотации - эти работы взаимозаменяемы с эквивалентами Spring.Однако я не знаю Java-эквивалентов @Service
, @Component
или @Repository
, поэтому в этих случаях вы можете положиться на конфигурацию контекста XML Spring в своем модуле MVC.