DEBUGGING IN JAVA HIBERNATE EĞİTİMİ

Hibernate sorunlarını kaynağında teşhis edin.

SQL log, istatistik, N+1, lazy ve flush hatalarını Hibernate'te adım adım bulup giderin.

3 günlük ileri Hibernate debugging eğitimi: SQL ve bind loglama, Statistics, N+1, LazyInitializationException, flush, merge, HikariCP ve deadlock teşhisi.

3 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Hibernate hata ayıklama ve performans teşhisi

Debugging in Java Hibernate, Hibernate'li uygulamalarda karşılaşılan hataların sistematik teşhisini öğretir. SQL ve bind parametre loglama, Hibernate Statistics, N+1 select tespiti, LazyInitializationException, flush ve dirty checking sürprizleri, detached ve merge hataları, StaleObjectStateException, deadlock ve connection pool (HikariCP) sorunları, yavaş sorgu analizi ve EXPLAIN planı okuma uygulamalı hata senaryolarıyla çalışılır.

Süre ve Format

3 Gün. Her gün dört modül; toplam 12 modül, her modülde altı konu başlığı ve uygulama çalışması yer alır.

Seviye

İleri Seviye — Hibernate'te SQL izleme, N+1, LazyInitializationException, flush sorunları ve performans hatalarının teşhisi.

Öğrenme Metodu

Kasıtlı hata içeren örnek projeler üzerinde debugger, SQL log ve istatistiklerle sorun bulunur ve düzeltilir.

Neden Bu Eğitim?

🎯Hata odaklı eğitim

Gerçek projede karşılaşılan hatalar bilerek yaratılır ve teşhis yöntemiyle çözülür.

🛠️Ölçerek karar verme

Tahmin yerine Statistics ve SQL sayacı ile ölçüm yapılır.

🚀Üretimde teşhis

Production logging ve sorgu planı okuma becerisi kazanılır.

Anahtar Konular

hibernate debugginghibernate n+1 çözümülazyinitializationexceptionhibernate performanshikaricp ayarlarıhibernate statisticsjpa hata ayıklamahibernate sql logexplain analyzespring data jpa performans
“Ölçmeden düzeltilen performans sorunu, yalnızca yer değiştirir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Hibernate deneyimi

Entity, ilişki ve JPQL kullanmış olmak gerekir.

2
Spring Boot

Spring Boot ve Spring Data JPA ile çalışmış olmak faydalıdır.

3
SQL bilgisi

JOIN, index ve EXPLAIN kavramlarına aşinalık gerekir.

4
IDE debugger

Breakpoint ve conditional breakpoint kullanabilmek gerekir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı Hibernate'in ürettiği SQL'i ve davranışını görünür kılar.
Modül 1
SQL ve Bind Loglama
  • hibernate.show_sql ve format_sql
  • org.hibernate.SQL ve BasicBinder logger
  • bind parametrelerini görme
  • p6spy ve datasource-proxy
  • log seviyeleri
  • hassas veriyi loglamama
Modül 2
Hibernate Statistics
  • generate_statistics ayarı
  • sorgu, fetch ve cache sayıları
  • en yavaş sorgular
  • SessionFactory istatistik API'si
  • Micrometer ile metrik
  • test içinde sorgu sayısı doğrulama
Modül 3
Debugger ile İnceleme
  • PersistenceContext içeriğini görme
  • entity durum kontrolü
  • proxy ve initialized kontrolü
  • conditional breakpoint
  • flush noktalarını yakalama
  • stack trace okuma
Modül 4
Hata Mesajı Okuma
  • PersistenceException zinciri
  • ConstraintViolationException
  • NonUniqueObjectException
  • TransientObjectException
  • PropertyAccessException
  • kök neden bulma
Günün hedefiKatılımcı N+1, lazy ve detached hatalarını tespit edip giderir.
Modül 1
N+1 Select
  • belirti: yüzlerce SELECT
  • tespit: log ve sorgu sayacı
  • JOIN FETCH ile çözüm
  • EntityGraph ile çözüm
  • @BatchSize ve SUBSELECT
  • DTO projection
Modül 2
LazyInitializationException
  • Session kapandıktan sonra erişim
  • open-in-view anti-pattern
  • transaction sınırını genişletme
  • initialize ve fetch join
  • DTO dönüşümü
  • Hibernate.isInitialized kontrolü
Modül 3
Flush ve Dirty Checking
  • beklenmeyen UPDATE
  • FlushMode AUTO ve COMMIT
  • sorgu öncesi otomatik flush
  • gereksiz save çağrıları
  • @DynamicUpdate
  • readOnly transaction etkisi
Modül 4
Detached ve Merge Hataları
  • merge ile yeni nesne üretimi
  • StaleObjectStateException
  • version alanı hataları
  • cascade MERGE sorunları
  • equals/hashCode kaynaklı Set hataları
  • DTO güncelleme deseni
Günün hedefiKatılımcı yavaş sorgu, havuz ve kilit sorunlarını inceler.
Modül 1
Yavaş Sorgu Analizi
  • EXPLAIN ANALYZE okuma
  • eksik index tespiti
  • LIKE ve fonksiyon kaynaklı index kaybı
  • sayfalama ve OFFSET maliyeti
  • keyset pagination
  • sorgu ipucu (hint)
Modül 2
Bağlantı Havuzu
  • HikariCP ayarları
  • havuz tükenmesi belirtisi
  • connection leak tespiti
  • maximumPoolSize hesabı
  • transaction süresi ve havuz
  • leakDetectionThreshold
Modül 3
Kilit ve Deadlock
  • optimistic ve pessimistic kilit
  • deadlock log okuma
  • lock timeout
  • kilit sırası tutarlılığı
  • SELECT FOR UPDATE SKIP LOCKED
  • retry deseni
Modül 4
Önbellek ve Toplu İşlem
  • birinci ve ikinci seviye cache
  • query cache riskleri
  • batch insert (jdbc.batch_size)
  • StatelessSession
  • bellek şişmesi ve clear()
  • toplu güncelleme JPQL

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
SQL izleme

Bind parametreleriyle birlikte Hibernate SQL'ini loglayabilir ve inceleyebilirsiniz.

✅
İstatistik okuma

Hibernate Statistics ile sorgu ve fetch sayılarını ölçebilirsiniz.

✅
N+1 çözümü

N+1 problemini tespit edip JOIN FETCH, EntityGraph veya BatchSize ile giderebilirsiniz.

✅
Lazy hata çözümü

LazyInitializationException nedenini bulup uygun sınır ve fetch çözümünü uygulayabilirsiniz.

✅
Flush analizi

Beklenmeyen UPDATE ve flush zamanlama sorunlarını teşhis edebilirsiniz.

✅
Merge hataları

Detached nesne ve versiyon çakışması hatalarını yönetebilirsiniz.

✅
Sorgu planı okuma

EXPLAIN ANALYZE çıktısıyla index eksiklerini bulabilirsiniz.

✅
Havuz ve kilit teşhisi

HikariCP tükenmesi ve deadlock sorunlarını log üzerinden çözebilirsiniz.

Kimler İçin Uygundur?

  • Hibernate ile üretim uygulaması geliştiren
  • hatalı davranışları
  • yavaş sorguları teşhis etmek isteyen orta ve ileri düzey Java geliştiriciler

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Hibernate ile üretim uygulaması geliştiren, hatalı davranışları ve yavaş sorguları teşhis etmek isteyen orta ve ileri düzey Java geliştiriciler.
Open-in-view kapatılmalı mı?
Çoğu durumda evet, nedenleri ve alternatif transaction sınırı çözümleri eğitimde tartışılır.
Üretim ortamında teşhis anlatılıyor mu?
Evet, düşük maliyetli loglama, metrik ve yavaş sorgu log yöntemleri işlenir.
Hangi veritabanı kullanılır?
Laboratuvarlarda PostgreSQL ve H2 kullanılır, EXPLAIN örnekleri PostgreSQL üzerindedir.
Sertifika verilir mi?
Katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Debugging in Java Hibernate Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
Seviyeİleri Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn