Merhaba arkadaşlar, bu yazımda restful web service de Hello World diyeceğiz. Daha önceki derslerde kurulumdan bahsetmiştik. Şimdi örnek kod üzerinden konuyu anlamaya çalışalım:
Person.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public class Person { private int id; private String name; private String surname; public Person(int id, String name, String surname) { this.id = id; this.name = name; this.surname = surname; } public Person() { } //Getters and Setters |
Person sınıfımız bizim pojo sınıfımızdır. Değişkenler ve bu değişkenlere ait getter/setter metotlar vardır.
RestApplication.java
1 2 3 4 5 6 7 8 9 10 |
@ApplicationPath("application") public class RestApplication extends Application { @Override public Set<Class<?>> getClasses() { Set<Class<?>>list=new HashSet<>(); list.add(RestService.class); return list; } } |
javax.ws.rs.core.Application sınıfını extend ederek bu sınıfın Restful Application sınıfı olduğunu belirtiyoruz. getClasses() metodunu override ederek Service sınıfımızı listeye ekleyerek belirtiyoruz. @ApplicationPath notasyonu ile pathimizi belirtiyoruz.
RestService.java
1 2 3 4 5 6 7 8 9 10 11 |
@Path("/rest") public class RestService { @GET @Produces(MediaType.TEXT_PLAIN) @Path("/getperson") public String getPerson() { Person person = new Person(1, "Abdullah Furkan", "KOC"); return person.getName() + " " + person.getSurname(); } } |
@Path notasyonu ile sınıfa path veriyoruz. getPerson() metodu ile oluşturulan person nesnesi döndürülüyor.
@Get => Metodun get olduğunu belirtiyor.
@Produces() => Response’un türünü belirtiyor.
MediaType.Text_Plain => Text döndürür.
@Path() => Metodun pathini belirtir.
Projeyi çalıştırdığımızda http://localhost:8080/JAX-RS-Tutorial/application/rest/getperson adresine gittiğimizde Abdullah Furkan KOÇ sonucu response olarak döner.
Bu yazımı burada bitiriyorum. Diğer yazılarımda görüşmek üzere…