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).