Welcome to Our Website

Restful-Web-Services-Tutorial im Java

Welcome to Restful-Web-Services-Tutorial im Java. REST ist die Abkürzung für REpresentational State Transfer. REST ist ein Architekturstil für die Entwicklung von Anwendungen, auf die über das Netzwerk zugegriffen werden kann. Der architektonische Stil wurde von Roy Fielding in seiner Doktorarbeit im Jahr 2000 ans Licht gebracht.

Restful Web Services

Restful Web Services ist eine zustandslose Client-Server-Architektur, bei der Webdienste Ressourcen sind und durch ihre URIs identifiziert werden können.,

REST-Client-Anwendungen können HTTP GET/POST-Methoden verwenden, um Restful-Webdienste aufzurufen. REST gibt kein bestimmtes Protokoll an, das verwendet werden soll, aber in fast allen Fällen wird es über HTTP/HTTPS verwendet. Im Vergleich zu SOAP-Webdiensten sind diese leichtgewichtig und folgen keinem Standard. Wir können XML, JSON, Text oder jede andere Art von Daten für Anfrage und Antwort verwenden.

Java-RESTful-Web-Services-API

Java API for RESTful Web Services (JAX-RS), ist die Java-API für die Erstellung von REST web-services., JAX-RS verwendet Anmerkungen, um die Entwicklung und Bereitstellung von Webdiensten zu vereinfachen. JAX-RS ist Teil von JDK, sodass Sie nichts hinzufügen müssen, um die Anmerkungen zu verwenden.

Restful Web Services Annotations

Einige der wichtigen JAX-RS Annotationen sind:

  • : wird verwendet, um den relativen Pfad der Klasse und Methoden anzugeben. Wir können den URI eines Webservices abrufen, indem wir den Pfadanmerkungswert scannen.,
  • @GET, @PUT, @POST, @DELETE und @HEAD: wird verwendet, um den HTTP-Anforderungstyp für eine Methode anzugeben.
  • @Produces, @Consumes: dient zum angeben der Anfrage und-Antwort-Typen.
  • @PathParam: Wird verwendet, um den Methodenparameter durch Parsen an den Pfadwert zu binden.

Restful-Web-Services und SOAP

  1. SOAP ist ein Protokoll, während REST ist ein Architekturstil.,
  2. SOAP-Server – und Clientanwendungen sind eng miteinander verbunden und binden an den WSDL-Vertrag, während es in REST-Webdiensten und-Clients keinen Vertrag gibt.
  3. Lernkurve ist einfach für REST im Vergleich zu SOAP-Web-Services.
  4. REST Web Services Request-und Response-Typen können XML, JSON, Text usw. sein. während SOAP nur mit XML funktioniert.
  5. JAX-RS ist die Java-API für REST-Webdienste, während JAX-WS die Java-API für SOAP-Webdienste ist.

REST API Implementierungen

Es gibt zwei wichtige Implementierungen von JAX-RS API.,

  1. Jersey: Jersey ist die Referenz-Implementierung von Sun. Um Jersey als JAX-RS-Implementierung zu verwenden, müssen wir nur das Servlet im Web konfigurieren.xml und fügen Sie erforderliche Abhängigkeiten hinzu. Beachten Sie, dass die JAX-RS-API Teil von JDK not Jersey ist, daher müssen wir die Abhängigkeitsgläser in unserer Anwendung hinzufügen.
  2. RESTEasy: RESTEasy ist das JBoss-Projekt, das die JAX-RS-Implementierung bereitstellt.

Java Restful Web Services Tutorial

Lassen Sie uns sehen, wie einfach Restful Web Service mit Jersey zu erstellen und dann RESTEasy., Wir werden folgende Methoden über HTTP verfügbar machen und die Chrome Postman-Erweiterung verwenden, um diese zu testen.,d>

GET Gibt ein Dummy-Personenobjekt zurück /person/add POST Fügt eine Person hinzu /person/{id}/delete GET Löschen Sie die Person mit ‚id‘ im URI /person/getAll GET Get all persons /person/{id}/get GET Get the person with ‚id‘ in the URI

estful Web Services

Create a dynamic web project and konvertieren Sie es dann in Maven, um das Skelett Ihres Webservices-Projekts abzurufen., Das folgende Bild zeigt die Projektstruktur des endgültigen Projekts.

schauen wir uns die Jersey-Abhängigkeiten, die wir in pom.xml-Datei.

Wir müssen keine Jersey-Client-Abhängigkeiten hinzufügen, aber wenn Sie ein Java-Programm schreiben, um einen REST-Webdienst mit Jersey aufzurufen, ist dies erforderlich.

Schauen wir uns nun den Bereitstellungsdeskriptor an, um zu erfahren, wie Jersey zum Erstellen unserer Webanwendung konfiguriert wird.

Das ist alles, was erforderlich ist, um Jersey in unsere Webanwendung einzufügen, in unserem Java-Code werden wir JAX-RS-Annotationen verwenden., Beachten Sie den Wert des init-Parameters com.sun.jersey.config.property.packages, um ein Paket bereitzustellen, das nach Webdienstressourcen und-methoden durchsucht wird.

REST Example Model Classes

Zunächst erstellen wir zwei model Beans – Person für unsere Anwendungsdaten und Response zum Senden von Antworten an Clientsysteme. Da wir XML-Antworten senden, sollten die Beans mit @XmlRootElement kommentiert werden, daher haben wir diese Klasse.,

REST Web Services Tutorial Services

Basierend auf unserer URI-Struktur finden Sie unten die Serviceschnittstelle und den Implementierungscode.

Restful-Web-Services-Prüfung

Das ist es. Unser Webdienst ist bereit, exportieren Sie ihn einfach als WAR-Datei und legen Sie ihn in das Tomcat-Webapps-Verzeichnis oder stellen Sie ihn in einem anderen Container Ihrer Wahl bereit.

Nachfolgend sind einige der Tests aufgeführt, die mit der Postman Chrome-Erweiterung für diesen Webdienst durchgeführt wurden. Beachten Sie, dass wir Accept-und Content-Type-Werte als „application/xml“ im Anforderungsheader bereitstellen müssen, wie im folgenden Bild gezeigt.,

  • getDummy
  • add
  • get
  • getAll
  • delete

Das ist alles zum Erstellen von Webdiensten mit Jersey JAX-RS-Implementierung. Wie Sie sehen, verwendet der größte Teil des Codes JAX-RS-Annotationen und Jersey ist über den Bereitstellungsdeskriptor und die Abhängigkeiten angeschlossen.,

RESTEasy RESTful Web Services Example

Wir werden die gesamte im Jersey-Projekt entwickelte Geschäftslogik verwenden, aber anstatt Änderungen am selben Projekt vorzunehmen, habe ich ein neues Projekt erstellt. Erstellen Sie ein dynamisches Webprojekt und konvertieren Sie es in ein Maven-Projekt. Kopieren Sie dann alle java-Klassen – Person, Response, PersonService und PersonServiceImpl. Unten ist das endgültige Projekt, nachdem wir mit allen Änderungen fertig sind.

Fügen Sie unten RESTEasy Abhängigkeiten in pom.xml-Datei.

Unten ist das Web.xml-Datei, in der wir Resteasy Servlet konfigurieren.,

Beachten Sie die init-Parameter, in denen MyApp Klasse als Wert angeben, hier erweitern wir javax.ws.rs.core.Application Klasse wie unten gezeigt.

RESTEasy-Web-Services-Prüfung

Das ist es. Unser Webservice ist bereit mit RESTEasy JAX-RS Implementierung. Im folgenden sind einige der output von Postman chrome-Erweiterung test.,

  • getDummy
  • hinzufügen
  • get

Das ist alles für Restful Web Services Tutorial, ich hoffe, Sie haben etwas über JAX-RS-Anmerkungen gelernt und die Vorteile von standard-API, die uns bei der Wiederverwendung von Code und dem Übergang von Jersey zu RESTEasy so einfach geholfen hat.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.