Velkommen til Restful Web Services Opplæringen i Java. RESTEN er akronym for REpresentational State Transfer. RESTEN er et arkitektonisk stil for å utvikle programmer som kan være tilgjengelig over nettverket. RESTEN arkitektoniske stilen ble brakt i lys av Roy Fielding i sin doktoravhandling i 2000.
Restful Web Services
Restful Web Services er en statsløs klient-server arkitektur, hvor web-tjenester er ressurser og kan være identifisert av sitt Uri-er.,
RESTEN Klient programmer kan bruke HTTP GET/POST metoder til å påberope seg Restful web services. RESTEN ikke angir noe bestemt protokoll som brukes, men i nesten alle tilfeller er det brukt over HTTP/HTTPS. Sammenlignet med SÅPE web services, disse er lette og ikke følger noen standard. Vi kan bruke XML, JSON, tekst eller andre typer data for forespørsel og respons.
Java RESTful Web Services API
Java API for RESTful Web Services (JAX-RS) er Java API for å lage RESTEN web-tjenester., JAX-RS bruker markeringer for å forenkle utvikling og distribusjon av web-tjenester. JAX-RS er en del av JDK, så du trenger ikke å ta med noe å bruke det kommentarer.
Restful Web Services Kommentarer
Noen av de viktige JAX-RS-markeringer er:
-
@Path
: brukes til å angi den relative banen av klasse og metoder. Vi kan få URI av en webservice ved å skanne Banen merknad verdi., -
@GET
,@PUT
,@POST
,@DELETE
og@HEAD
: brukes til å angi HTTP-forespørsel-type for en metode. -
@Produces
,@Consumes
: brukes til å angi forespørsel og respons typer. -
@PathParam
: brukes til å binde metode parameteren til bane verdien av å analysere det.
Restful Web Services og SÅPE
- SÅPE er en protokoll mens RESTEN er en arkitektonisk stil.,
- SÅPE server og klient programmer er tett koblet og binde med WSDL-kontrakt, mens det er ingen kontrakt i RESTEN web services og klient.
- læringskurven er lett for RESTEN sammenlignet med SÅPE web-tjenester.
- RESTEN web services forespørsel og respons typer kan være XML, JSON, tekst etc. mens SÅPE fungerer med XML bare.
- JAX-RS er Java API for RESTEN web services mens JAX-WS er Java API for SOAP web-tjenester.
REST API-Implementering
Det er to store implementeringer av JAX-RS API.,
– >
- Jersey: Jersey er referansen implementering gitt av Solen. For å bruke Jersey som vår JAX-RS gjennomføring, alt vi trenger for å konfigurere sin servlet i nettet.xml og legge kreves avhengigheter. Vær oppmerksom på at JAX-RS API er en del av JDK ikke Jersey, så vi er nødt til å legge sin avhengighet krukker i vår søknad.
- RESTEasy: RESTEasy er JBoss prosjekt som gir JAX-RS gjennomføring.
Java Restful Web Services Opplæringen
La oss se hvor enkelt å lage God natts web-tjeneste ved hjelp av Jersey og deretter RESTEasy., Vi vil være å utsette følgende metoder over HTTP og bruk Chrome Postmannen extension for å teste disse.,d>
Jersey Restful Web Services
Lage dynamiske web-prosjektet, og deretter konvertere den til Maven for å få skjelettet av din web services prosjektet., Nedenfor bildet viser prosjektet struktur av det endelige prosjektet.
La oss se på Jersey avhengigheter vi har i pom.xml-fil.
Vi er ikke nødvendig å legge til jersey-klient avhengigheter men hvis du skriver inn java-program for å påberope seg en HVIL web-tjeneste ved hjelp av Jersey da det er nødvendig.
la oss Nå se på deployment descriptor å lære hvordan du konfigurerer Jersey for å lage vår web-applikasjon.
Det er alt som er nødvendig for å plugin Jersey inn i vår web-programmet, i våre java-kode vil vi være med JAX-RS-markeringer., Legg merke verdien av init parameteren com.sun.jersey.config.property.packages
for å gi pakke som vil bli skannet for web-ressurser og metoder.
RESTEN Eksempel Modell Klasser
Først av alt vil vi lage to-modell bønner – Person
for våre application data og Response
for å sende svar til kundens systemer. Siden vi vil sende XML-responsen, bønner skal være merket med @XmlRootElement
, derfor har vi denne klassen.,
RESTEN Web Services Opplæringen Tjenester
Basert på våre URI struktur, nedenfor er service-grensesnittet, og det er gjennomføring kode.
Restful Web Services Test
det er det. Vår web service er klar, kan du eksportere det som WAR-fil, og plasser den i Tomcat webapps katalog eller distribuere til andre beholder av ditt valg.
Nedenfor er noen av de testene som utføres ved hjelp av Postmannen chrome-utvidelse for denne web-tjenesten. Vær oppmerksom på at vi har å gi Akseptere og Innhold-Type verdier som «application/xml» på forespørsel header som vist i bildet nedenfor.,
- getDummy
- legg til
- kommer
- getAll
- slett
Det er alt for å skape web-tjenester ved hjelp av Jersey JAX-RS gjennomføring. Som du kan se at de fleste av koden ved hjelp av JAX-RS kommentarer og Jersey er koblet gjennom deployment descriptor og avhengigheter.,
RESTEasy RESTful Web Services Eksempel
Vi vil bruke alle business logic utviklet i Jersey-prosjekt, men heller enn å gjøre endringer til det samme prosjektet, har jeg opprettet et nytt prosjekt. Lage dynamiske web-prosjektet og konvertere den til Maven prosjektet. Deretter kan du kopiere alle java-klasser – Person, Svar, PersonService og PersonServiceImpl. Nedenfor er det siste prosjektet etter at vi er ferdig med alle endringer.
Legg til nedenfor RESTEasy avhengigheter i pom.xml-fil.
Nedenfor er internett.xml-fil, hvor vi er konfigurere Resteasy servlet.,
Merke init-param der er å gi MyApp
klasse som verdi, her er vi utvider javax.ws.rs.core.Application
klasse som vist nedenfor.
RESTEasy Web Services Test
det er det. Vår web service er klar med RESTEasy JAX-RS gjennomføring. Nedenfor er noen av output fra Postmannen chrome extension test.,
- getDummy
- legg til
- kommer
Det er alt for Restful Web Services Opplæringen, Jeg håper du har lært om JAX-RS kommentarer og forstått fordelene med å ha standard-API-en som hjalp oss i gjenbruk av kode og beveger seg fra Jersey til RESTEasy så lett.