Interested Article - JAX-RS

JAX-RS: Java API для веб-сервисов RESTful ( JAX-RS ) — это спецификация API языка программирования Java , которая обеспечивает поддержку при создании веб-сервисов в соответствии с архитектурным шаблоном передачи состояния представления ( REST ). JAX-RS использует аннотации, представленные в Java SE 5, для упрощения разработки и развертывания клиентов и конечных точек веб-служб.

Начиная с версии 1.1, JAX-RS является официальной частью Java EE 6. Примечательной особенностью этого является тот факт, что не требуется никакой конфигурации чтобы начать использовать JAX-RS. Если Java EE 6 не применяется, то потребуется небольшая запись в дескрипторе развертывания web.xml .

Спецификация

JAX-RS предоставляет некоторые аннотации, помогающие сопоставить класс ресурса POJO ( англ. Plain Old Java Object ) как веб-ресурс. Аннотации находятся в пакете Java javax.ws.rs . Они включают:

  • @Path указывает относительный путь для класса или метода ресурса.
  • @GET , @PUT , @POST , @DELETE и @HEAD указывают метод HTTP-запроса.
  • @Produces определяет MIME-типы ответа (используются для согласования контента).
  • @Consumes указывает принимаемые в запросе MIME-типы.

Кроме того, JAX-RS предоставляет дополнительные аннотации к параметрам метода для извлечения информации из запроса. Все @*Param аннотации принимают ключ некоторой формы, который используется для поиска требуемого значения.

  • @PathParam привязывает параметр метода к сегменту пути.
  • @QueryParam привязывает параметр метода к значению параметра HTTP- запроса .
  • @MatrixParam привязывает параметр метода к значению параметра матрицы HTTP .
  • @HeaderParam привязывает параметр метода к значению заголовка HTTP .
  • @CookieParam привязывает параметр метода к значению cookie .
  • @FormParam привязывает параметр метода к значению формы .
  • @DefaultValue указывает значение по умолчанию для вышеуказанных привязок, когда ключ не найден.
  • @Context возвращает весь контекст объекта (например @Context HttpServletRequest request ).
Источник —

Same as JAX-RS