HİBERNATE EĞİTİMİ

Hibernate ile verimli ve doğru veri katmanı kurun

Entity eşleme, ilişkiler, N+1 çözümü, önbellek, Envers, toplu işlem ve Spring Data JPA ile Hibernate.

Hibernate eşleme, ilişkiler, HQL/Criteria, N+1, önbellek, kilitleme, Envers ve toplu işlemleri kapsayan 3 günlük uygulamalı eğitim.

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

Eğitim Hakkında

Hibernate ile ORM ve veri katmanı mühendisliği

Hibernate eğitimi; SessionFactory ve persistence context, @Entity eşlemeleri ve kalıtım stratejileri, OneToMany/ManyToMany ilişkileri, cascade ve fetch türleri, HQL, Criteria, native SQL ve DTO projeksiyonları, 1. ve 2. seviye önbellek, N+1 ve @EntityGraph, optimistic/pessimistic kilit, Envers, JDBC batch, StatelessSession, Flyway ve Spring Data JPA konularını kapsar.

Süre ve Format

3 Gün. Her gün dört modül; Eşleme, İlişkiler ve Sorgu; Performans, Transaction ve Spring; İleri Eşleme, Toplu İşlem ve Test ekseninde ilerleyen uygulamalı program.

Seviye

Orta Seviye — Hibernate/JPA eşleme, ilişkiler, HQL-Criteria, önbellek, kilitleme, Envers, performans ve test

Öğrenme Metodu

Her konu SQL log çıktısı açıkken uygulanır; üretilen sorgular okunarak eşleme kararları doğrulanır.

Neden Bu Eğitim?

🗃️SQL'i görmek

Hibernate'in ürettiği sorguları okuyup performans sorunlarını bulursunuz.

⚖️Doğru tutarlılık

Optimistic locking ve Envers ile tutarlılık ve denetim sağlarsınız.

🚀Büyük veri

Batch ve StatelessSession ile toplu işlemleri hızlandırırsınız.

Anahtar Konular

Hibernate eğitimiJPAHQLN+1 problemiHibernate önbellekEnversSpring Data JPAHibernate performansentity eşlemeORM Java
“ORM bir soyutlama olabilir; SQL'i okumayı bilen için kaçak değil, araçtır.”

Ön Koşullar

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

1
Java bilgisi

Sınıf, interface, koleksiyon ve istisna kavramlarına temel hakimiyet.

2
Komut satırı

Terminal ve temel Linux/Windows komutları.

3
Geliştirme ortamı

JDK 17+ ve IntelliJ IDEA veya Eclipse kurulu bir bilgisayar.

4
Maven/Git

Maven ile derleme ve temel git bilgisi.

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ı entity ve ilişkileri eşler, HQL, Criteria ve native sorgular yazar.
Modül 1
ORM Temelleri ve Hibernate Kurulumu
  • Nesne-ilişkisel uyumsuzluk ve ORM'in çözdüğü problemler
  • Hibernate mimarisi: SessionFactory, Session, Transaction
  • hibernate.cfg.xml / persistence.xml ve dialect ayarları
  • Hibernate ve JPA ilişkisi (EntityManager vs Session)
  • hbm2ddl.auto seçenekleri ve show_sql / format_sql
  • Maven bağımlılıkları ve H2/PostgreSQL ile ilk uygulama
Modül 2
Eşleme: Entity, Id ve Kalıtım
  • @Entity, @Table, @Column ve @Enumerated / @Temporal eşlemeleri
  • Birincil anahtar stratejileri: IDENTITY, SEQUENCE, UUID
  • @Embeddable / @Embedded ve @AttributeConverter
  • Kalıtım stratejileri: SINGLE_TABLE, JOINED, TABLE_PER_CLASS
  • @MappedSuperclass ve ortak alanlar (audit alanları)
  • Naming strategy ve şema üretimi
Modül 3
İlişkiler, Cascade ve Fetch
  • @OneToOne, @OneToMany/@ManyToOne ve mappedBy sahipliği
  • @ManyToMany ve ara tablo (@JoinTable) tasarımı
  • cascade türleri ve orphanRemoval
  • LAZY / EAGER yükleme ve proxy nesneleri
  • Çift yönlü ilişki yardımcı metotları ve equals/hashCode tuzakları
  • LazyInitializationException nedenleri ve çözümleri
Modül 4
Sorgulama: HQL, Criteria ve Native SQL
  • HQL / JPQL: select, join, group by, parametre bağlama
  • Criteria API ve tip güvenli sorgu oluşturma (metamodel)
  • Native SQL, @NamedQuery / @NamedNativeQuery
  • Projeksiyonlar: DTO, tuple ve constructor expression
  • Sayfalama (setFirstResult/setMaxResults) ve sıralama
  • Bulk update/delete ve bağlam senkronizasyonu
Günün hedefiKatılımcı önbellek ve kilitleme uygular, Spring Data JPA ile entegre eder ve şemayı Flyway ile yönetir.
Modül 1
Önbellek ve Performans
  • Birinci seviye (Session) önbelleği ve persistence context
  • İkinci seviye önbellek (Ehcache/Infinispan) ve sorgu önbelleği
  • N+1 select problemi: join fetch, @EntityGraph, @BatchSize
  • JDBC batch insert/update ayarları
  • İstatistikler (hibernate.generate_statistics) ve SQL günlüğü analizi
  • Read-only entity, StatelessSession ve DTO projeksiyonu ile hafifletme
Modül 2
Transaction, Kilitleme ve Denetim
  • Entity durumları: transient, persistent, detached, removed
  • persist, merge, flush, refresh ve clear farkları
  • İzolasyon seviyeleri ve ACID
  • Optimistic locking (@Version) ve pessimistic lock modları
  • Hibernate Envers ile varlık denetim geçmişi
  • Çoklu kiracılık (multi-tenancy) ve soft delete (@SoftDelete)
Modül 3
Spring Data JPA ve Hibernate Entegrasyonu
  • Spring Boot ile Hibernate otomatik yapılandırması
  • JpaRepository, türetilmiş sorgu ve @Query
  • @Transactional sınırı ve open-in-view uyarısı
  • Specification ve Querydsl ile dinamik sorgu
  • Projeksiyon (interface/DTO) ve sayfalama
  • @EntityGraph ve N+1 çözümü
Modül 4
Şema Yönetimi ve Migrasyon
  • hbm2ddl.auto: validate, update, create-drop ve üretimde neden kullanılmaz
  • Flyway ve Liquibase ile sürümlü migrasyon
  • Şema doğrulama ve entity-şema uyumsuzlukları
  • İndeks, kısıt ve sequence tasarımı
  • Büyük tablo migrasyonu ve sıfır kesintili değişiklik
  • Test veritabanı şeması ve veri tohumlama
Günün hedefiKatılımcı bileşik anahtar ve JSON eşlemeleri yapar, toplu işlem yazar, N+1 testlerini kurar ve proje sunar.
Modül 1
İleri Eşleme Teknikleri
  • Bileşik anahtar (@EmbeddedId, @IdClass)
  • @Formula, @Where, @Filter ve hesaplanan alanlar
  • JSON sütunlar ve özel UserType / @JdbcTypeCode
  • @Any, @DiscriminatorFormula ve polimorfik ilişki
  • @NaturalId ve iş anahtarı ile sorgu
  • Lifecycle callback'ler ve entity listener'lar
Modül 2
Toplu İşlem ve Büyük Veri
  • JDBC batch_size, order_inserts ve order_updates
  • StatelessSession ile hızlı yazma
  • ScrollableResults ve stream ile büyük sonuç kümeleri
  • Bulk HQL update/delete ve persistence context etkisi
  • Sayfalama stratejileri: offset vs keyset
  • Bellek kontrolü: flush/clear döngüsü
Modül 3
Hibernate Testi ve Tanısı
  • H2 ve Testcontainers ile test veritabanı seçimi
  • @DataJpaTest ve test verisi yönetimi
  • datasource-proxy ile sorgu sayısı doğrulama (N+1 testi)
  • hibernate.generate_statistics ve slow query log
  • SQL planı (EXPLAIN) okuyarak eşleme iyileştirme
  • Sık hata mesajları ve çözüm rehberi
Modül 4
Proje: Hibernate ile Veri Katmanı
  • Alan modeli ve ilişkilerin tasarımı
  • Repository ve servis katmanı yazımı
  • Önbellek ve toplu işlem iyileştirmeleri
  • Envers ile denetim ve @Version ile iyimser kilit
  • Test paketi ve sorgu sayısı doğrulaması
  • Kod inceleme ve sunum

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
ORM mimarisi

Persistence context ve entity durumlarını açıklayabilirsiniz.

🎯
Eşleme

Id, ilişki ve kalıtım eşlemelerini kurabilirsiniz.

🧩
Sorgulama

HQL, Criteria ve projeksiyon kullanabilirsiniz.

🛠️
N+1 çözümü

join fetch ve EntityGraph ile N+1'i giderebilirsiniz.

🔍
Önbellek

İkinci seviye önbelleği yapılandırabilirsiniz.

🚀
Kilitleme

@Version ve pessimistic lock kullanabilirsiniz.

📈
Denetim

Envers ile değişiklik geçmişi tutabilirsiniz.

🧪
Toplu işlem

JDBC batch ve StatelessSession ile hızlı yazma yapabilirsiniz.

Kimler İçin Uygundur?

  • Java
  • veritabanı destekli uygulama geliştiren backend geliştiriciler ve performans sorunlarını gidermek isteyen ekipler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Java ile veritabanı destekli uygulama geliştiren backend geliştiriciler ve performans sorunlarını gidermek isteyen ekipler için uygundur.
Hibernate 6 mı 5 mi?
Hibernate 6.x esas alınır; 5.x'ten farklar belirtilir.
Veritabanı olarak ne kullanılır?
PostgreSQL ve H2; Testcontainers ile gerçek veritabanı testi yapılır.
Spring şart mı?
Hayır; saf Hibernate ve JPA anlatılır, ardından Spring Data JPA entegrasyonu gösterilir.
Eğitim sonunda sertifika alabilir miyim?
Evet. Devamlılık ve başarı koşullarını yerine getiren 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. Hibernate Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMDeveloping Object-Oriented Programs in Java Eğitimi
Yazılım Geliştirme Eğitimleri

Developing Object-Oriented Programs in Java Eğitimi

3 günTemelOnline / Yüz Yüze / Hibrit

Java nesne yönelimli programlama eğitimi: sınıf, kapsülleme, kalıtım, interface, polimorfizm, composition, SOLID ilkeleri ve UML ile uygulamalı OOP.

Detayları Gör →
Java ve JVMDynamo Servlet Beans & Server-side Java Eğitimi
Yazılım Geliştirme Eğitimleri

Dynamo Servlet Beans & Server-side Java Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Dynamo Servlet Bean eğitimi: ATG Nucleus bileşenleri, özel droplet yazımı, DSP etiketleri, form handler ve Repository API ile sunucu tarafı Java geliştirme.

Detayları Gör →
Java ve JVMEffective Agile Java Development Eğitimi
Yazılım Geliştirme Eğitimleri

Effective Agile Java Development Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Çevik Java geliştirme eğitimi: TDD, JUnit 5, Mockito, Cucumber BDD, refaktör, temiz kod, Git trunk-based, CI hattı ve SonarQube ile kod kalitesi.

Detayları Gör →
Java ve JVMEffective Java Programming Using Design Patterns Eğitimi
Yazılım Geliştirme Eğitimleri

Effective Java Programming Using Design Patterns Eğitimi

3 günİleriOnline / Yüz Yüze / Hibrit

Java tasarım desenleri eğitimi: GoF creational, structural ve behavioral desenler, Effective Java deyimleri, lambda ile Strategy ve Command, Proxy ve Spring örn

Detayları Gör →
Java ve JVMFSD Development: Java Spring Framework Eğitimi
Yazılım Geliştirme Eğitimleri

FSD Development: Java Spring Framework Eğitimi

3 günİleriOnline / Yüz Yüze / Hibrit

Java Spring full stack geliştirme eğitimi: Spring Boot REST API, JPA, PostgreSQL, JWT güvenlik, React ön yüz, Testcontainers ve Docker Compose ile uçtan uca pro

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn