2016-03-23 1 views
1

Я собираюсь сделать проект с AngularJS с Spring.Весна для браузера и веб-сервиса

Spring слой должен быть WebService слой тоже, но услуги в Spring WebServices и SpringMVC одинаковы.

Возникает вопрос:

Должен ли я сделать 2 слоя с SpringMVC (MVC позвонит WS) и WS или сделать все, что в том же слое?

Если 2 слоя, как я могу называть WS через MVC (контроллеры)

редактирования.К добавить некоторые образцы:

AngularJS называют {myURL}/Автомобили/список через Автомобили страницу {myURL/авто }

WS просто позвоните {myURL}/автомобили/список

сомнение предоставить страницу для AngularJS с архитектурой, которая предоставляет услуги для обоих (AngularJS и WS звонков)

ответ

1

По моему мнению, ваш подход может быть: реализует бизнес-логику на уровне обслуживания, в вашем весеннем бобах или @Service bean let say, тогда вы должны создать слой «конечной точки», который использует ранее выполненную службу, выставлять как веб-сервисное мыло в наборе конечной точки и в качестве остатка для вашей части приложения angularJS. Таким образом, в вашем restController (rest part) и enpointPart (SpringWS) вы можете воспользоваться одной и той же бизнес-логикой, но вы можете использовать одну и ту же логику в двух способах использования.

Считайте, что SpringWS (когда вы говорите о Spring WebService) Я предполагаю, что вы говорите о SpringWS, который весной вызывает работу с темой WebService), вы зарегистрировали DispatcherMessageServlet, и этот сервлет-контроллер fornt будет находиться под другим URL-адресом, относящимся к DispatcherServlet.

еще лучше, вы можете сделать так думает:

  1. /приложение-контекст/ваш-HTML-PAGEURL для HTML в презентации слоя
  2. /приложение-контекст/API/СВОИМИ остальные-апи-URL для вашего @RestController
  3. /приложение-контекст/услуги/* для Ws (мыло в данном случае) слой

Я надеюсь, что это может быть полезным для вас, и что я understanded хорошо вопрос.

+0

Я искал здесь, и я увидел подход: создайте пружинные контроллеры, чтобы обеспечить выделение html-страниц и контроллера отдыха. Так будет слой html layer и rest, с разными URL-адресами. например: myurl/system/cars & myurl/api/cars/list – Lucas

+0

да, это хороший выбор, я просто отредактировал мой ansuare для подчеркивания этого –

Смежные вопросы