Jakarta Rastful Web Services

Jakarta Rastful Web Services (JAX-RS)
Originalautor (en) Sun Microsystems
Entwickler (en) Eclipse Foundation
Stabile Version
3.0 / 30. Juni 2020; vor 2 Jahren
Repository
Geschrieben in Java
Betriebssystem Plattformübergreifend
Plattform Java
Typ Anwendungsrahmen
Lizenz EPL 2.0 oder Gpl v2 w/Klassenpfadausnahme
Webseite Projekte.Finsternis.org/Projekte/ee4j.Jaxrs Edit this at Wikidata

Jakarta Rastful Web Services, (JAX-RS; Früher Java API für erholsame Webdienste) ist a Jakarta ee API Spezifikation, die Unterstützung beim Erstellen liefert Internetdienste laut dem Repräsentationsstaatsübertragung (Rest) Architekturmuster.[1] JAX-RS verwendet Anmerkungen, eingeführt in Java SE 5, um die Entwicklung und Bereitstellung von Webdienst -Clients und -Dendpunkten zu vereinfachen.

Ab Version 1.1 ist JAX-RS ein offizieller Teil von Java ee 6. Ein bemerkenswertes Merkmal, ein offizieller Teil von Java EE zu sein, ist, dass keine Konfiguration erforderlich ist, um JAX-RS zu verwenden. Für Nicht-Java ee 6-Umgebungen ein kleiner Eintrag in der web.xml Bereitstellungsdeskriptor ist nötig.

Spezifikation

JAX-RS bietet einige Anmerkungen, um eine Ressourcenklasse zuzuordnen (a Pojo) als Webressource. Die Anmerkungen verwenden die Java -Paket jakarta.ws.rs (zuvor war javax.ws.rs wurde aber am 19. Mai 2019 umbenannt[2]). Sie beinhalten:

  • @Weg Gibt den Verwandten an Weg Für eine Ressourcenklasse oder -methode.
  • @ERHALTEN, @STELLEN, @POST, @LÖSCHEN und @KOPF Präzisiere das HTTP -Anforderungstyp einer Ressource.
  • @Produces Gibt die Antwort an Internet -Medientypen (benutzt für Inhaltsverhandlung).
  • @Consumes Gibt die anerkannten Anforderungs -Internet -Medientypen an.

Darüber hinaus liefert es weitere Anmerkungen zu Methodenparameter Informationen aus der Anfrage herausholen. All die @*Param Anmerkungen haben einen Schlüssel in irgendeiner Form, der verwendet wird, um den erforderlichen Wert nachzuschlagen.

  • @PathParam Bindet den Methodenparameter an ein Pfadsegment.
  • @Queryparam bindet den Methodenparameter an den Wert eines HTTP Abfrageparameter.
  • @Matrixparam Bindet den Methodenparameter an den Wert eines HTTP -Matrixparameters.
  • @Headerparam bindet den Methodeparameter an eine HTTP -Header Wert.
  • @Cookieparam bindet den Methodeparameter an a Plätzchen Wert.
  • @Formparam bindet den Methodeparameter an a bilden Wert.
  • @Standardwert Gibt a an Standardwert Für die obigen Bindungen, wenn der Schlüssel nicht gefunden wird.
  • @Kontext Gibt den gesamten Kontext des Objekts zurück (zum Beispiel @Context httpServletRequest -Anfrage).

JAX-RS 2.0

Im Januar 2011 gründete der JCP die JSR 339 Expert Group, um an JAX-RS 2.0 zu arbeiten. Die Hauptziele sind unter anderem eine gemeinsame Client -API und Unterstützung für Hypermedia nach dem Hassoas-Prinzip von SICH AUSRUHEN. Im Mai 2013 erreichte es die endgültige Veröffentlichungsphase.[3]

2017-08-22 JAX-RS 2.1[4] Die endgültige Veröffentlichung der Spezifikation wurde veröffentlicht. Zu den wichtigsten neuen unterstützten Funktionen gehörenServer-Sent-EreignisseAnwesendreaktiv Kunden und JSON-B.[5]

Implementierungen

Implementierungen von JAX-Rs umfassen:[6]

Verweise

  1. ^ Hadley, p. 1.
  2. ^ "Paket für Github umbenennen". GitHub.
  3. ^ "JSR 339: JAX-RS 2.0: Die Java-API für erholsame Webdienste". Java Community -Prozess.
  4. ^ "JSR 370: Java-API für RESTful Web Services (JAX-RS 2.1) Spezifikation". Java Community -Prozess.
  5. ^ "JSR 367: Java-API für JSON Bindung (JSON-B)". Java Community -Prozess.
  6. ^ Little, Mark (1. Oktober 2008). "Ein Vergleich von JAX-RS-Implementierungen".

Externe Links

Tutorials