• Buradasın

    Spring Boot'ta Hata Yönetimi (Exception Handling) Eğitimi

    youtube.com/watch?v=6BKudk8mQm0

    Yapay zekadan makale özeti

    • Bu video, bir eğitmen tarafından sunulan Spring Boot framework'ünde hata yönetimi (exception handling) konusunu anlatan bir eğitim içeriğidir.
    • Video, hata yönetiminin ne olduğunu açıklayarak başlıyor ve Spring Boot'ta hata yönetimi yapmanın iki farklı yolunu (yerel ve global) detaylı olarak gösteriyor. Eğitmen, bir araç listesi API'si örneği üzerinden EntityNotFoundException gibi özel hataların nasıl oluşturulacağını, endpoint özelinde ve global exception handler'lar kullanarak bu hataların nasıl yönetileceğini adım adım anlatıyor.
    • Videoda ayrıca ControllerAdvice ve ExceptionHandler annotation'larının kullanımı, base exception'lar oluşturma ve farklı hata durumları için farklı mesajlar döndürme teknikleri de gösterilmektedir. Tüm konular kod örnekleri ve test sonuçları üzerinden pekiştirilmektedir.
    00:07Spring Boot'ta Hata Yönetimi
    • Bu bölümde Spring Boot projesinde hata yönetimi (exception handling) konusu ele alınacak.
    • Uygulamalarda hata yönetimi, kontrolümüzde olan veya olmayan hataları yönetmek için kullanılır.
    • Örneğin, 5 ID'li bir kişi kaydını çekmeye çalışırken, bu kayıt silinmiş veya başka biri tarafından kullanılmış olabilir.
    01:17Exception Handling Modülü Oluşturma
    • Spring Boot'ta hata yönetimi iki farklı şekilde yapılabilir: lokal hata yönetimi ve global hata yönetimi.
    • Lokal hata yönetimi, belirli bir metod içinde hata yönetimi yaparken, global hata yönetimi tüm controller'ların hatalarını bir noktada yönetmeyi sağlar.
    • Örnek için bir build plugini kopyalanıp live template oluşturulabilir.
    02:38Proje Yapısı ve Paket Oluşturma
    • Proje için Spring Boot Web Starter bağımlılığı eklenir.
    • "exception handling application" adında bir paket oluşturulur ve içinde "main" metodu yer alır.
    • Spring Boot uygulaması çalıştırılırken "spring-boot-application" parametresi kullanılır.
    05:56API ve Controller Oluşturma
    • Araç listesini listeleyen bir API oluşturulur.
    • Controller'da "car" adında bir request mapping'i ve "get car" adında bir endpoint eklenir.
    • "Car" sınıfı oluşturulur ve içinde "name" ve "brand" alanları bulunur.
    08:12Servis Oluşturma
    • Araç servisi oluşturulur ve "get car" adında bir metodu eklenir.
    • Servis içinde bir liste tutulur ve bu liste statik olarak initialize edilir.
    • "add car" metodu ile liste güncellenir ve "find first" metodu ile belirli bir araç aranır.
    14:44Özel Hata Oluşturma
    • "EntityNotFoundException" adında özel bir hata sınıfı oluşturulur.
    • Bu hata sınıfı RuntimeException'dan türetilir ve parametre alır.
    • Servis içinde araç bulunamadığında bu özel hata fırlatılır.
    17:28Hata Yönetimi Yöntemleri
    • Hata yönetimi için lokal ve global iki farklı yöntem kullanılabilir.
    • Lokal hata yönetimi için controller içinde özel bir metod eklenebilir.
    • Bu metod "ResponseEntity" döndürür ve hata durumunda uygun şekilde işlenir.
    18:36Exception Handler Kullanımı
    • Entity not found exception'ı handle eden bir exception handler oluşturuluyor.
    • Exception handler annotation'ı kullanılarak, belirli bir exception türü alındığında çalışacak metot belirleniyor.
    • Entity not found exception'ı alındığında, response entity yerine stream döndürülerek "record not found" mesajı veriliyor.
    20:51Exception Handling Uygulaması
    • API çağrıldığında servis içerisinde işlemler gerçekleştirilir ve yaşanan exceptionlar handler'a yönlendirilir.
    • Exception stack'i yerine "record not found" mesajı döndürülerek kullanıcıya bilgi verilir.
    • Tüm exception'ları tek tek yazmak yerine, base exception'dan türetilen farklı exception'lar kullanılabilir.
    24:42Global Exception Handler
    • Sadece belirli bir endpoint için değil, tüm endpoint'ler için global exception handler oluşturulabilir.
    • ResControllerAdvice annotation'ı kullanılarak, tüm ResController'lara gelen request'ler için exception handling yapılabilir.
    • Global exception handler içerisinde farklı hata durumları için case'ler eklenebilir.
    27:39İkinci Exception Örneği
    • IllegalArgumentException adında yeni bir hata durumu oluşturuluyor.
    • Servis içerisinde, gelen name parametresinin 1 ile başlaması durumunda IllegalArgumentException fırlatılıyor.
    • Exception'lar kullanıcıya gösterilecek mesajlar veya JSON formatında döndürülebilir.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor