Jakarta RESTful Web Services - Jakarta RESTful Web Services
Оригинальный автор (ы) | Sun Microsystems |
---|---|
Разработчики) | Фонд Затмения |
Стабильный выпуск | 3.0 / 30 июня 2020 г. |
Репозиторий | |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Платформа | Ява |
Тип | Фреймворк приложения |
Лицензия | EPL 2.0 или GPL v2 сИсключение пути к классам |
Интернет сайт | проекты |
Jakarta RESTful Web Services, (JAX-RS; ранее Java API для веб-служб RESTful) является Джакарта EE API спецификация, обеспечивающая поддержку в создании веб-сервисы согласно Изобразительное State Transfer (REST) архитектурный образец.[1] JAX-RS использует аннотации, введенный в Java SE 5, чтобы упростить разработку и развертывание клиентов и конечных точек веб-служб.
Начиная с версии 1.1 JAX-RS является официальной частью Java EE 6. Примечательной особенностью того, что он является официальной частью Java EE, является то, что для начала использования JAX-RS не требуется никакой настройки. Для сред, отличных от Java EE 6, небольшая запись в web.xml дескриптор развертывания требуется.
Технические характеристики
JAX-RS предоставляет некоторые аннотации для помощи в отображении класса ресурсов ( POJO ) как веб-ресурс. В аннотациях используется Пакет Java javax.ws.rs
. Они включают:
@Дорожка
указывает относительный дорожка для класса или метода ресурса.@ПОЛУЧАТЬ
,@ПОЛОЖИТЬ
,@ПОЧТОВЫЙ
,@УДАЛИТЬ
и@ГОЛОВА
указать Тип HTTP-запроса ресурса.@Products
указывает ответ Типы интернет-СМИ (используется для согласование содержания ).@ Потребляет
указывает принятые типы Интернет-носителей запроса.
Кроме того, он предоставляет дополнительные аннотации к параметры метода вытащить информацию из запроса. Все @ * Param
аннотации принимают ключ некоторой формы, который используется для поиска требуемого значения.
@PathParam
связывает параметр метода с сегментом пути.@QueryParam
связывает параметр метода со значением HTTP параметр запроса.@MatrixParam
связывает параметр метода со значением Параметр матрицы HTTP.@HeaderParam
связывает параметр метода с Заголовок HTTP ценить.@CookieParam
связывает параметр метода с печенье ценить.@FormParam
связывает параметр метода с форма ценить.@Значение по умолчанию
указывает значение по умолчанию для вышеуказанных привязок, когда ключ не найден.@Context
возвращает весь контекст объекта (например,@Context HttpServletRequest запрос
).
JAX-RS 2.0
В январе 2011 года JCP сформировал группу экспертов JSR 339 для работы над JAX-RS 2.0. Основными целями являются (среди прочего) общий клиентский API и поддержка Hypermedia в соответствии с HATEOAS -принцип ОСТАЛЬНЫЕ. В мае 2013 года он вышел на стадию финального релиза.[2]
22 августа 2017 г. JAX-RS 2.1[3] был опубликован финальный выпуск спецификации.отправленные сервером события,реактивный клиенты и JSON-B.[4]
Реализации
Реализации JAX-RS включают:[5]
- Apache CXF, открытый исходный код веб-сервис фреймворк
- Джерси, то эталонная реализация из солнце (сейчас же Oracle )
- ОТДЫХ, JBoss реализация
- Рестлет
- Сервер приложений WebSphere из IBM:
- Версия 7.0: через «Пакет функций для приложений с поддержкой связи»
- Версия 8.0 и новее: изначально
- Сервер приложений WebLogic из Oracle, увидеть заметки
- Апачи Тоскана (http://tuscany.apache.org/documentation-2x/sca-java-bindingrest.html ), снято с производства
- Фреймворк Cuubez (https://web.archive.org/web/20190707005602/http://cuubez.com/ )
- Эверрест, Реализация Коденви
- Jello-Framework, Java Application Framework, оптимизированная для Google App Engine, включая мощный механизм RESTful и комплексную модель авторизации данных.
использованная литература
- ^ Хэдли, стр. 1.
- ^ «JSR 339: JAX-RS 2.0: API Java для веб-служб RESTful». Процесс сообщества Java.
- ^ «JSR 370: Спецификация Java API для веб-служб RESTful (JAX-RS 2.1)». Процесс сообщества Java.
- ^ «JSR 367: Java API для привязки JSON (JSON-B)». Процесс сообщества Java.
- ^ Литтл, Марк (1 октября 2008 г.). «Сравнение реализаций JAX-RS».
- Хэдли, Марк и Пол Сандос, ред. (17 сентября 2009 г.). JAX-RS: Java API для RESTful WebServices (версия 1.1), Процесс сообщества Java