ОТДЫХ с использованием JAX RS или Spring MVC - PullRequest
18 голосов
/ 01 марта 2012

Я пытаюсь создать веб-службу REST (на стороне сервера), которая позволит партнерской системе подключать информацию о заказе / POST в формате JSON. Должен ли я использовать JAX RS (например, из JBOSS RESTEasy) или Spring MVC для создания такого сервиса? Они оба кажутся достаточно способными для достижения того же самого, что касается создания службы REST.

Спасибо!

Ответы [ 4 ]

18 голосов
/ 01 марта 2012

Зависит от того, хотите ли вы узнать что-то новое или идти с тем, что вы уже знаете.

Если у вас уже есть опыт работы с Spring MVC и вы хотите быстро выполнить работу, я бы предложил остаться в Spring MVC. В Spring 3.1 есть несколько полезных улучшений для функций REST, в том числе возможность генерировать «документация по конечной точке» .

Если, с другой стороны, вы хотите расширить свое резюме и / или получать удовольствие от изучения новых технологий, то попробуйте JAX RS. Я не использовал его, но это специализированная среда WS, которая, вероятно, будет иметь любую функцию, которая вам потребуется.

Конечно, если у вас есть опыт работы с JAX RS, но не с Spring MVC, тогда применяется обратное: -)

10 голосов
/ 03 мая 2012

Если вы разрабатываете проект EE 5, я бы рекомендовал использовать JAX-RS с Spring. RI для JAX-RS, Джерси, имеет сервлет-диспетчер Spring JAX-RS. Это значительно упрощает управление внедрением зависимостей с помощью JAX-RS и предоставляет вам все функции Spring MVC, такие как привязка форм и проверка, но вы также можете использовать стандартный подход Java для REST - и, на мой взгляд, лучше и проще в управлении, чем Spring REST.

Если это приложение EE 6, то вы можете подумать о том, чтобы отказаться от Spring, поскольку JAX-RS является частью спецификаций EE 6, и вы можете использовать EE CDI в своих классах JAX-RS.

1 голос
/ 04 июля 2014

Обратите внимание, что на Джерси есть ошибка, которая влияет на его интеграцию с Spring:

https://java.net/jira/browse/JERSEY-2301

В итоге, если вам нужен Spring AOP в ваших ресурсах JAX-RS, он не будет работать.Впрыск зависимостей работает хорошо.

0 голосов
/ 01 июня 2016

REST - это скорее архитектурный стиль разработки веб-сервисов, который очень легко понять даже без документации для разработчика.Обычные технически подкованные люди могут легко понять шаблоны URL, а также типы ответов поддержки JSON и XML облегчают интеграцию с новыми стандартами модуляции javascript, такими как backbone или angular.js.

С другой стороны SpringMVC - это большеКонцентрируясь на стиле архитектуры модель-представление-контроллер при разработке приложений.

...