В статье не хватает ссылок на источники (см. рекомендации по поиску). |
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
).