Sunday, December 11, 2016

RestFul (Representational State Transfer (REST)) Giriş

   -   Apache HTTP Server'ın mucitlerinden Roy Fielding tarafından yapılmış doktora tezi olarak ortaya çıkmıştır HTTP protokolü üzerinden taşınması hedeflenen dağıtık bir ağ mimaridir.

   -   XML, JSON, Text vs… sonuçları oluşturabilir.

   -   REST client-server mimarisidir.

   -   Esnektir, SOAP gibi standartları yoktur.

   -   Gelen, giden data boyutu SOAP ile karlılaştırıldığında daha azdır.

   -   Implementasyonu kolaydır.

   -   Stateless request-i zamanında sunucuda istemci ile ilgili bir bilginin tutulmaz.

   -   İstemci tarafından request anında gönderdiği bir token kimliği veya benzeri ayırıcı bilgi ile istemci ayırımini yapar.

   -   HTTP metotlarını ( GET,POST,PUT,DELETE )  kullanır.

    • GET          : Veri listeleme ve görüntüleme zamanı kullanılır.
    • POST        : Veri ekleme zamanı kullanılır.
    • PUT          : Veriyi güncelleme zamanı kullanılır.
    • PATCH     : Verinin sadece bir parçasını güncelleme zamanı kullanılır.
    • DELETE  : Veriyi silme zamanı kullanılır.


Saturday, December 10, 2016

RestFul Ders(8)



































RestFul Ders(7)
































RestFul Ders(6)




























RestFul Ders(5)











----------------------------------------- hi -----------------------------------------

    @GET
    @Path("/hi")
    public String hi(@QueryParam("name") String name, @QueryParam("surname") String surname) {
        return "Hello " + name + " " + surname;
    }







http://localhost:8080/RestFulLesson5/resources/hello/hi?name=Abdulkadir&surname=Selcukoglu

Domain Name        : localhost
Port                         : 8080
Application Name  : RestFulLesson5
ApplicationPath     : resources
Path (Class)            : hello
Path (Method)        : hi
QueryParam          : Abdulkadir
QueryParam          : Selcukoglu
Result                      : Hello Abdulkadir Selcukoglu



----------------------------------------- getPLS -----------------------------------------

    @GET
    @Path("/getPLS")
    public String getPLS(@QueryParam("name") String name, @QueryParam("language") List language) {
        return "Languages which  knows " + name + " " + language;
    }





http://localhost:8080/RestFulLesson5/resources/hello/getPLS?name=Abdulkadir&language=JAVA&language=C++

Domain Name        : localhost
Port                         : 8080
Application Name  : RestFulLesson5
ApplicationPath     : resources
Path (Class)            : hello
Path (Method)        : getPLS
QueryParam          : Abdulkadir
QueryParam          : [JAVA, C ]
Result                      : Languages which knows Abdulkadir [JAVA, C ]


----------------------------------------- getPLS2 -----------------------------------------

    public String getPLS2(@Context UriInfo ui) {
        String name = ui.getQueryParameters().getFirst("name");
        List language = ui.getQueryParameters().get("language");
        return "Languages which  knows " + name + " " + language;
    }






http://localhost:8080/RestFulLesson5/resources/hello/getPLS2?name=Abdulkadir&language=JAVA&language=C++

Domain Name        : localhost
Port                         : 8080
Application Name  : RestFulLesson5
ApplicationPath     : resources
Path (Class)            : hello
Path (Method)        : getPLS2
Context                   : Abdulkadir , [JAVA, C ]
Result                      : Languages which knows Abdulkadir [JAVA, C ]




RestFul Ders(4)




















http://localhost:8080/RestFulLesson4/resources/pls/getPLS/Abdulkadir;language=JAVA;language=C++;

Domain Name        : localhost
Port                         : 8080
Application Name  : RestFulLesson4
ApplicationPath     : resources
Path (Class)            : pls
Path (Method)        : getPLS
PathParam             : Abdulkadir
MatrixParam         : language
Result                      : Languages which knows Abdulkadir [JAVA, C++]

RestFul Ders(3)
























http://localhost:8080/RestFulLesson3/resources/pls/getPLS/languages;name=Abdulkadir;language=JAVA;language=C++;


Domain Name                   : localhost
Port                                    : 8080
Application Name             : RestFulLesson3
ApplicationPath                : resources
Path (Class)                       : pls
Path (Method)                   : getPLS
PathParam("employee") : languages
PathSegment                     : name
PathSegment                     : language
Result                                 : Languages which knows Abdulkadir [JAVA, C++]


RestFul Ders(1)



























http://localhost:8080/RestFulLesson1/resources/messages/msg

Domain Name        : localhost
Port                         : 8080
Application Name  : RestFulLesson1
ApplicationPath     : resources
Path (Class)            : messages
Path (Method)        : msg
Result                      : Hello JAVA