2013-10-04 3 views
2
  1. Я хочу создать новое приложение RESTful. Я немного запутался в каркасе, я могу сделать это с весной + майкой, но могу ли я сделать одно и то же приложение, используя только джерси?Создание приложения Java RESTful

  2. В чем разница между SpringREST и джерси? Что более удобно? Зачем?

ответ

1

Главное отличие состоит в том, что Джерси основан на стандартах, а Spring MVC - нет, если это имеет значение для вас. Оба очень хороши.

Главное преимущество, которое я нашел в Джерси (я использовал 1.x), состоял в том, что он мог автоматически использовать Jackson JSON Views автоматически, а Spring MVC не смог. Кроме того, обработка ошибок в Spring MVC вызывает раздражение, так как страницы ошибок по умолчанию соответствуют стандарту HTML.

Существует еще один проект, который вы еще не указали, и это Spring Data + Spring HATEOAS, который новее, но кажется довольно хорошим.

2

Я использовал оба фреймворка немного. Spring - это большая инфраструктура/API, которая охватывает многие области, одна из которых - услуги отдыха. Джерси, с другой стороны, просто отдыхает. Это эталонная реализация для JAX-RS API (JSR 311 & JSR 339).

Это, по сути, «стандартный» способ отдохнуть на Java. Существуют также другие реализации, такие как RestEasy. Теоретически ваш код должен будет ссылаться только на обычные интерфейсы JAX-RS, что означает, что при необходимости вы должны поменяться местами на другую реализацию. Это, очевидно, работает только в том случае, если вы не полагаетесь на индивидуальные функции, не входящие в стандарт JAX-RS.

Если вы собираетесь использовать Джерси, вы все равно можете решить, хотите ли вы весну. Он может быть полезен только для его инъекции зависимостей. В этом случае у вас может быть класс JAX-RS, который обрабатывает запросы на отдых, который затем вызывает функцию весны, которая была введена. Это на самом деле то, как я пишу API для отдыха.

Следует ли использовать пружину для записи остальных услуг, или JAX-RS является субъективным и действительно зависит от вас. Лично я пошел со стандартным API JAX-RS, потому что нашел, что он больше ориентирован на отдых. Подход весеннего отдыха - это в основном расширение spring-mvc, которое изначально предназначалось для JSP. Я нашел такие вещи, как обработка ошибок, проще с использованием JAX-RS, чем spring-mvc. Это говорит, что кто-то другой может просить разницу. Другое преимущество заключается в том, что, следуя стандарту в теории, у вас будет больше гибкости в будущем, если вы хотите переключиться на другого провайдера.

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