Welcome to Our Website

Restful Web Services Tutorial in Java (Polski)

Witamy w Restful Web Services Tutorial in Java. REST jest akronimem Reprezentacyjnego transferu stanu. REST to styl architektoniczny do tworzenia aplikacji, które mogą być dostępne przez sieć. Styl architektoniczny REST został przedstawiony przez Roya Fieldinga w jego pracy doktorskiej w 2000 roku.

Restful Web Services

Restful Web Services to bezstanowa architektura klient-serwer, w której Usługi internetowe są zasobami i mogą być identyfikowane po ich Uri.,

aplikacje klienckie REST mogą używać metod HTTP GET / POST do wywoływania Usług Sieciowych Restful. REST nie określa żadnego konkretnego protokołu do użycia, ale w prawie wszystkich przypadkach jest używany przez HTTP / HTTPS. W porównaniu z usługami sieciowymi SOAP są one lekkie i nie spełniają żadnych standardów. Możemy użyć XML, JSON, tekst lub inny rodzaj danych do żądania i odpowiedzi.

Java RESTful Web Services API

Java API for RESTful Web Services (JAX-RS) to Java API do tworzenia REST web services., JAX-RS wykorzystuje adnotacje w celu uproszczenia tworzenia i wdrażania usług internetowych. JAX-RS jest częścią JDK, więc nie musisz niczego dołączać, aby używać jego adnotacji.

RESTful Web Services Adnotations

niektóre z ważnych adnotacji JAX-RS to:

  • @Path: używane do określenia względnej ścieżki klas i metod. Możemy uzyskać URI usługi webservice skanując wartość adnotacji Path.,
  • @GET, @PUT, @POST, @DELETE I @HEAD: używane do określa typ żądania HTTP dla metody.
  • @Produces,@Consumes: służy do określania typów żądań i odpowiedzi.
  • @PathParam: służy do powiązania parametru metody z wartością ścieżki przez jej parsowanie.

Restful Web Services and SOAP

  1. SOAP jest protokołem, podczas gdy REST jest stylem architektonicznym.,
  2. aplikacje serwera SOAP i klienta są ściśle powiązane i wiążą się z umową WSDL, podczas gdy w REST web services i kliencie nie ma umowy.
  3. krzywa uczenia się jest łatwa do odpoczynku w porównaniu z usługami sieciowymi SOAP.
  4. REST web services request and response types can be XML, JSON, text etc. natomiast SOAP działa tylko z XML.
  5. JAX-RS jest API Java dla REST web services, podczas gdy JAX-WS jest API Java dla SOAP web services.

implementacje REST API

istnieją dwie główne implementacje JAX-RS API.,

  1. Jersey: Jersey jest implementacją referencyjną dostarczoną przez Sun. Aby używać Jersey jako naszej implementacji JAX-RS, wystarczy skonfigurować jego servlet w web.xml i dodać wymagane zależności. Zauważ, że JAX-RS API jest częścią JDK, a nie Jersey, więc musimy dodać jego słoje zależności w naszej aplikacji.
  2. RESTEasy: RESTEasy jest projektem JBoss, który zapewnia implementację JAX-RS.

Java Restful Web Services Tutorial

zobaczmy, jak łatwo stworzyć Restful web Service używając Jersey, a następnie RESTEasy., Będziemy ujawniać następujące metody przez HTTP i używać rozszerzenia Chrome Postman do testowania tych.,d>

GET zwraca obiekt dummy person /person/add POST dodaje osobę /person/{id}/delete GET Usuń osobę z 'id' w URI /person/getall get get wszystkie osoby /person/{ID}/get get get osoba z 'ID' w Uri

Jersey RESTful Web Services

utwórz dynamiczny projekt WWW, a następnie przekonwertuj go na Maven, aby uzyskać szkielet swojego projektu web services., Poniższy obrazek pokazuje strukturę projektu finalnego projektu.

spójrzmy na zależności Jersey, które mamy w pom.plik xml.

nie jesteśmy zobowiązani do dodawania zależności jersey-client, ale jeśli piszesz program java do wywoływania usługi internetowej REST przy użyciu Jersey, jest to wymagane.

teraz spójrzmy na deskryptor wdrażania, aby dowiedzieć się, jak skonfigurować Jersey do tworzenia naszej aplikacji internetowej.

to wszystko jest wymagane do wtyczki do naszej aplikacji internetowej, w naszym kodzie java będziemy używać adnotacji JAX-RS., Zwróć uwagę na wartość parametru init com.sun.jersey.config.property.packages, aby zapewnić pakiet, który zostanie przeskanowany pod kątem zasobów i metod usługi sieciowej.

REST przykładowe klasy modeli

przede wszystkim stworzymy dwa modele – Persondla danych naszej aplikacji oraz Response dla wysyłania odpowiedzi do systemów klienckich. Ponieważ będziemy wysyłać odpowiedź XML, beans powinien być opatrzony adnotacją @XmlRootElement , stąd mamy tę klasę.,

REST Web Services Tutorial Services

w oparciu o naszą strukturę URI poniżej znajduje się interfejs usługi i jego kod implementacyjny.

Restful Web Services Test

To wszystko. Nasz serwis internetowy jest gotowy, wystarczy wyeksportować go jako plik wojenny i umieścić w katalogu Tomcat webapps lub wdrożyć do dowolnego innego kontenera do wyboru.

poniżej przedstawiamy niektóre z testów wykonanych przy użyciu rozszerzenia Postman chrome dla tego serwisu internetowego. Zauważ, że musimy podać wartości Accept i Content-Type jako „application / xml” w nagłówku żądania, jak pokazano na poniższym obrazku.,

  • getDummy
  • dodaj
  • get
  • getall
  • delete

to wszystko do tworzenia usług internetowych przy użyciu implementacji Jersey JAX-RS. Jak widać większość kodu używa adnotacji JAX-RS, A Jersey jest podłączony przez deskryptor wdrażania i zależności.,

RESTEasy RESTful Web Services Example

wykorzystamy całą logikę biznesową opracowaną w projekcie Jersey, ale zamiast wprowadzać zmiany w tym samym projekcie, stworzyłem nowy projekt. Utwórz dynamiczny projekt internetowy i przekonwertuj go do projektu Maven. Następnie skopiuj wszystkie klasy Javy-Person, Response, PersonService i PersonServiceImpl. Poniżej znajduje się ostateczny projekt po zakończeniu wszystkich zmian.

Dodaj poniżej resteasy zależności w pom.plik xml.

Poniżej znajduje się strona.plik xml gdzie konfigurujemy Resteasy servlet.,

zwróć uwagę na init-param, gdzie dostarczają MyApp Klasa jako wartość, tutaj rozszerzamyjavax.ws.rs.core.Application klasa Jak pokazano poniżej.

RESTEasy Web Services Test

To wszystko. Nasz serwis internetowy jest gotowy z implementacją RESTEasy JAX-RS. Poniżej znajdują się niektóre z wyników Postman chrome extension test.,

  • getDummy
  • dodaj
  • get

to wszystko dla Restful Web Services Tutorial, mam nadzieję dowiedziałeś się o adnotacjach JAX-RS i zrozumiałeś korzyści płynące ze standardowego API, które pomogło nam w ponownym użyciu kodu i przejściu z Jersey do resteasy tak łatwo.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *