Spring Boot Dersleri : HATEOAS Nedir? HATEOAS Uygulama Örneği Kullanımı

Spring Boot
Spring Dersleri

Spring Boot Dersleri‘ne devam ediyoruz.

Nedir?

Spring Boot projelerimizde kullandığımız Rest işlemlerinde kullanımı ve dökümante edilmesini sağlayan Hypermedia As The Engine Of Application State‘un kısaltması olan HATEOAS‘ı bu yazıda inceleyeceğiz.

Bir rest servisinin response üzerinden tüm içerik bilgilerini görebildiğimiz başka bir kaynağa ya da dökümana gerek kalmadan kullanabilmeye olanak sağlayan bir araçtır. Örnek verecek olursam bir kişinin kaydını getirmek için rest üzerinden gelen cevabın içerisinde o restin diğer yapabileceği tüm yeteneklerinde görülebileceği bir yapı sağlamaktadır. Projemizde başka Rest işlemleri eklediysek silme, güncelleme gibi işlemleri yapabilmek için hangi rest yolunun kullanılması gerektiği gibi bilgileri görüntüler.

Spring Boot içerisinde HATEOAS kullanmak için Maven bağımlılığını kullanarak ekleyebiliriz.

Spring Boot Rest projesi için HATEOAS’ı kullanarak bir proje yapalım.

Örnek Uygulama

Bir öğrenci uygulaması yapalım. Öğrenci bilgilerini getiren ve silme işlemini gerçekleştiren bir Spring Boot Rest uygulaması yapacağız.

Maven bağımlılığı kullanarak projeyi geliştireceğiz. Gerekli olan bağımlılıklarımızın yer aldığı pom.xml dosyamız aşağıdaki gibi olacak.

Maven bağımlılığımız bu şekildedir.

Öğrenci classımızı oluşturalım.

Student Controllerimizi oluşturalım. Controllerimiz RestControllerimiz yapısında olacak.

RestControllerimiz’e HATEOAS yeteneklerini controllerimizde kullanarak ekliyoruz.

Yukarıdaki satırlar Rest servisimizinden HATEOAS özelliğini kullanarak Rest servisimizin özelliklerini tanımlayarak istek yapacak kişiye bu bilgilerin gönderilmesini sağlamaktayız. Bu satırları açıklayayım.

methodOn: Gelen isteğin kullanılacağı class ve hangi metodun hangi parametre alarak işlem yapacağını belirtir.

with_rel: Metod ile ilgili referans tanımlaması yapılır.

withType: Hangi Rest tipinde olduğunun tanımı yapılmaktadır.İstek yapan kişiye bilgi vermek için kullanılır.

Sonuç olarak cevap olarak dönen rest servisinde şu şekilde bilgiler gözükür.

Bilgileri istek yapana gözükerek dökümantasyonu oluşmaktadır.
 

Önceki Ders: Context Path Değiştirmek Spring Boot Dersleri Sonraki Ders:

 

One Comment

  1. Merhabalar hocam . bende Spring öğrenmek istiyorum. yalnız şu an sadece JavaSE bilgim mevcut JavaEE ne geçerken direk Spring ile mi başlamak lazım yoksa jsp ile mi ? . nasıl bir yol çiz meliyim ?

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Burak KUTBAY 2010 - 2019
%d blogcu bunu beğendi: