Restful Web Service (JAX-RS) – HelloWorld

Bu makalede basit bir web service örneğini geliştireceğiz. Örneğimizde projenin URL adresine girilen veriyi parametre olarak görecek ve bunu ekrana yazdıracak.

İlk olarak Maven projemizi oluşturacağız. Projemizde standart web uygulaması seçiyoruz. Projemiz oluştuğunda pom.xml dosyasını aşağıda ki gibi düzenliyoruz.

Yukarıda pom.xml dosyamıza jersey-server kütüphanesini ekleyerek projemize dahil edilmesini sağlıyoruz.

Yukarıda WEB-INF/web.xml dosyamıza servlet-mapping aracılığı ile servimizin çalışacağı URL adresini tanımladık. Projemiz çalıştığında örnek url aşağıda ki gibi olacaktır.

localhost:8080/PROJE_ADI/rest/

/rest/* anlamı rest’den sonra yeni adresler gelebileceği anlamını taşır. param-value içersinde servisimizin olduğu paketi tanımlıyoruz. servlet-class içersinde ise sunucumuzu tanımlıyoruz. Yukarıda ki tanım Tomcat kullananların yapması gereken tanımdır. GlassFish uygulama sunucusunu kullanıyorsanız org.glassfish.jersey.servlet.ServletContainer olarak tanımlamanız gerekmektedir.

Yukarı da HelloWorld isimli java sınıfımızı oluşturuyoruz. İlgili sınıfın web service adresinin @Path notasyonunda /hello olarak tanımlıyoruz. /hello yazıldığı zaman bu sınıfı görmeye başlayacaktır. getMesaj isimli metodumuzu @GET notasyonu aracılığı ile Http Get yöntemini kullanması gerektiğini ve bu metodun dinamik bir adres olduğunu süslü parantezler içersinde ki mesaj isimli key ile tanımlıyoruz. Metot parametre değişkeni olan String mesaj’ın önünde @PathParam notasyonu ile mesaj isimli key’den gelen verinin, String tipinde ki mesaj değişkenine atanmasını sağlıyoruz. Response.status(200) ile isteğin başarılı olması durumunu. entity(mesaj)  ile mesaj değişkenini, build ile bu mesajın Response tipine çevrilerek return edilmesini sağlıyoruz.

Web tarayıcımızı açarak yukarıda ki adresi yazıyoruz. (Not: Adresi kendi projenize göre düzenleyin.) Ekran çıktısı aşağıda ki gibi olmaktadır.

simple-jax-rs-merhaba


Java Developer

Yazıyı Paylaş

Related Articles

Yorum Yaz

© 2020 Onur Arslan. Tüm Hakları Saklıdır. · RSS Yazıları · RSS Yorumları