Skip to content

ucaglarcaliskan/fibabanka_bootcamp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Fibabanka Bootcamp

Bu proje Fibabanka Spring Boot bootcamp'i kapsamında hazırlanmıştır.

Proje kapsamında Inventory, Shopping ve Commerce olmak üzere 3 microservice geliştirilmiştir.
Invertory mikroservisi ürünler ve kategoriler ile ilgili veritabanı işlemelerini yapmakta ve REST servisi sayesinde gelen HTTP isteklerine cevap vermektedir.
Shopping mikroservisi sepet ile ilgili veritabanı işlemelerini yapmakta ve REST servisi sayesinde gelen HTTP isteklerine cevap vermektedir.
Commerce mikroservisi ise diğer iki mikroservise istek atarak onları yönetmekte ve Client için arayüz sunmaktadır.

Gönderilebilecek istekler

  • GET http://localhost:8080/commerce/inventory/categories -> Kategorileri getirir
  • GET http://localhost:8080/commerce/inventory/products/{categoryId} -> İlgili kategoriye ait ürünleri getirir.
  • GET http://localhost:8080/commerce/inventory/product/{productId} -> Id'si verilen ürünü getirir.
  • GET http://localhost:8080/commerce/shopping/cart/create -> Yeni bir sepet oluşturarak id'sini döndürür.
  • POST http://localhost:8080/commerce/shopping/cart/add -> Body olarak verilen ürünü sepete ekler.
  • DELETE http://localhost:8080/commerce/shopping/cart/{cartId}/remove/{productId} -> Sepetten ürünü siler.
  • GET http://localhost:8080/commerce/shopping/checkout/{cartId} -> Sepeti bitirir.
  • GET http://localhost:8080/commerce/shopping/cart/find/{cartId} -> Sepet detaylarını getirir.

Test Senaryosu ve Ekran Görüntüleri

POST DELETE gibi HTTP isteklerini gösterebilmek RestTemplate kullanılarak bir http://localhost:8080/test/... ile başlayan istekleri alan bir controller oluşturulmuş ve client simüle edilmiştir. Eğitmenin önerisi üzerine test senaryosu bu client'a atılan GET istekleriyle gösterilmiş, client ise gelen GET isteklerine karşılık projede istenen istekleri göndermektedir. POSTMAN ya da cURL gibi bir araçla da bu istekler gönderilebilir (Test edilmiştir).
  1. http://localhost:8080/test/commerce/inventory/categories adresine GET isteği atılarak veritabanında kayıtlı olan kategoriler getirilmiştir. http://localhost:8080/test/commerce/inventory/categories adresine istek atılarak da JSON formatında çıktı alınabilir. 1

  2. http://localhost:8080/test/commerce/inventory/productsByCategory adresine istek atıldığında kategori id'si 1 olan ürünlerin getirilmesi sağlanmıştır. http://localhost:8080/commerce/inventory/products/{categoryId} adresine istek atılarak da ürünler JSON formatında alınabilir.2

  3. http://localhost:8080/test/commerce/inventory/product adresine istek atıldığında ürün id'si 2 olan ürün getirilmiştir. http://localhost:8080/commerce/inventory/product/{productId} adresine istek atılarak bu ürünün bilgileri JSON formatında alınabilir. 3

  4. http://localhost:8080/test/commerce/shopping/cart/create adresine istek atıldığında yeni sepet oluşturulması sağlanmıştır. http://localhost:8080/commerce/shopping/cart/create adresine istek atılarak da aynı işlem yapılabilir. 4

  5. http://localhost:8080/test/commerce/shopping/cart/add adresine istek atıldığında default olarak productId'si 2 olan ürünün cartId'si 3 olan sepete eklenmesi sağlanmıştır. http://localhost:8080/commerce/shopping/cart/add adresine POST isteği atılarak istenen ürün sepete eklenebilir.
    5

  6. http://localhost:8080/test/commerce/shopping/cart/removeProduct adresine GET isteği atıldığında cartId'si 3 olan sepetten productID'si 2 olan ürünün silinmesi sağlanmıştır. http://localhost:8080/commerce/shopping/cart/{cartId}/remove/{productId} adresine DELETE isteği atarak istenen ürün sepetten silinebilir.
    8
    Silindikten sonra sepet detayı:
    9

  7. http://localhost:8080/test/commerce/shopping/checkout adresine GET isteği atıldığında cartId'si 3 olan sepetin bitirilmesi sağlanmıştır. http://localhost:8080/commerce/shopping/checkout/{cartId} adresine cartId verilerek istenen sepetin bitirilmesi sağlanabilir. 7

  8. http://localhost:8080/test/commerce/shopping/cart/find adresine GET isteği atıldığında cartId'si 3 olan sepetin detayları gösterilmiştir. http://localhost:8080/commerce/shopping/cart/find/{cartId} adresine cartId ile istek atılarak sepetin detaylarına JSON formatında ulaşılabilir.
    6

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages