CUSTOMIZED MAPPING IN JAVA HIBERNATE EĞİTİMİ

Hibernate eşlemesini ihtiyacınıza göre şekillendirin.

AttributeConverter, UserType, kalıtım stratejileri, composite key ve formula eşlemelerini derinlemesine uygulayın.

3 günlük ileri Hibernate mapping eğitimi: AttributeConverter, UserType, composite key, inheritance, @Formula, cascade ve fetch stratejilerini üretilen SQL üzerinden öğrenin.

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

Eğitim Hakkında

Hibernate'te varsayılan eşlemenin ötesine geçen özel mapping teknikleri

Bu eğitim Hibernate'in varsayılan eşleme davranışının yetmediği durumlara odaklanır. JPA AttributeConverter ve Hibernate UserType ile özel tip eşleme, @Embeddable ve @EmbeddedId ile composite key, SINGLE_TABLE, JOINED ve TABLE_PER_CLASS kalıtım stratejileri, @Formula ve @Where gibi türetilmiş alanlar, @ElementCollection ve ilişki eşlemelerindeki fetch, cascade ve orphanRemoval kararları üretilen SQL üzerinden incelenir.

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 özel tip eşleme, converter, kalıtım stratejileri, composite key ve ilişki eşleme konuları.

Öğrenme Metodu

Her eşleme senaryosu bir H2 veya PostgreSQL şemasına karşı kodlanır, hibernate.show_sql ve format_sql çıktısıyla üretilen SQL doğrulanır.

Neden Bu Eğitim?

🎯Legacy şemaya uyum

Değiştirilemeyen veritabanı şemalarını entity modeline temiz biçimde eşlemeyi öğrenirsiniz.

🛠️SQL farkındalığı

Her eşleme kararının ürettiği SQL ve performans etkisi çıktı üzerinden gösterilir.

🚀Yeniden kullanılabilir tipler

Converter ve embeddable yapılar tek yerde yazılıp tüm entity'lerde kullanılır.

Anahtar Konular

hibernate mappinghibernate attributeconverterhibernate usertypejpa composite keyhibernate kalıtım stratejisihibernate formulahibernate n+1jpa embeddablehibernate eğitimijpa ileri seviye
“Güçlü bir eşleme, veritabanının dilini nesne modeline bozmadan çevirir.”

Ön Koşullar

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

1
Temel Hibernate

Entity, Session ve EntityManager kavramlarıyla çalışmış olmak gerekir.

2
JPA anotasyonları

@Entity, @Id, @ManyToOne gibi temel anotasyonlar bilinmelidir.

3
SQL ve DDL

JOIN, foreign key ve index kavramlarına hakimiyet beklenir.

4
Maven projesi

Hibernate 6, JDBC sürücüsü ve test altyapısı kurulabilen bir ortam 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ı özel veri tiplerini veritabanı sütunlarına AttributeConverter ve UserType ile eşler.
Modül 1
AttributeConverter
  • @Converter(autoApply) kullanımı
  • LocalDate ve boolean Y/N dönüşümü
  • JSON string dönüşümü
  • converter ve @Convert çatışmaları
  • converter'ın sorgu (JPQL) davranışı
  • converter birim testi
Modül 2
Hibernate UserType
  • UserType ve CompositeUserType arayüzü
  • nullSafeGet ve nullSafeSet
  • Hibernate 6 @JdbcTypeCode
  • @Type anotasyonu
  • değişebilir tiplerde deepCopy
  • equals ile dirty checking ilişkisi
Modül 3
Enum ve Temporal Eşleme
  • EnumType.ORDINAL ve STRING riski
  • enum için kod tabanlı converter
  • @Temporal ve java.time eşlemesi
  • timezone ve UTC saklama
  • @Lob ve büyük alanlar
  • @Basic(fetch=LAZY) sınırları
Modül 4
Embeddable ve Değer Nesneleri
  • @Embeddable ve @Embedded
  • @AttributeOverride kullanımı
  • iç içe embeddable
  • embeddable içinde koleksiyon
  • Money gibi değer nesnesi modeli
  • null embeddable davranışı
Günün hedefiKatılımcı bileşik anahtarlı tabloları ve kalıtım hiyerarşilerini doğru stratejiyle eşler.
Modül 1
Composite Primary Key
  • @EmbeddedId ve @IdClass farkı
  • equals ve hashCode zorunluluğu
  • @MapsId ile paylaşılan anahtar
  • bileşik FK ile @JoinColumns
  • sequence ve identity üreteçleri
  • UUID anahtar stratejisi
Modül 2
Kalıtım Stratejileri
  • SINGLE_TABLE ve discriminator
  • JOINED ve join maliyeti
  • TABLE_PER_CLASS ve UNION sorgusu
  • @MappedSuperclass kullanımı
  • polimorfik sorgu davranışı
  • strateji seçimi karar tablosu
Modül 3
Türetilmiş ve Filtreli Alanlar
  • @Formula ile hesaplanmış sütun
  • @Where ve @SQLRestriction
  • @Filter ve @FilterDef
  • soft delete için @SQLDelete
  • @Generated alanlar
  • @Subselect ve view eşleme
Modül 4
Secondary Table ve Çok Tablolu Entity
  • @SecondaryTable kullanımı
  • bir entity iki tablo senaryosu
  • @JoinFormula
  • legacy sütun adları ve NamingStrategy
  • @Table index ve unique tanımı
  • schema validation (hbm2ddl validate)
Günün hedefiKatılımcı ilişki eşlemelerini fetch, cascade ve orphanRemoval kararlarıyla performanslı kurar.
Modül 1
Çoklu İlişkiler
  • @OneToMany mappedBy ve sahip taraf
  • @ManyToMany ve join table sınıfı
  • @OneToOne paylaşılan PK
  • tek yönlü ve çift yönlü seçimi
  • ilişki yardımcı metotları
  • equals/hashCode ile Set davranışı
Modül 2
Koleksiyon Eşleme
  • @ElementCollection ve @CollectionTable
  • @OrderBy ve @OrderColumn
  • Map<K,V> eşleme ve @MapKey
  • Set, List, Bag farkı
  • koleksiyon güncellemede delete-insert tuzağı
  • @BatchSize kullanımı
Modül 3
Cascade ve Orphan Removal
  • CascadeType.PERSIST, MERGE, REMOVE
  • orphanRemoval=true semantiği
  • cascade ile merge sorunları
  • @OnDelete(CASCADE)
  • parent-child yaşam döngüsü
  • detached nesne ve merge davranışı
Modül 4
Fetch Stratejisi ve N+1
  • LAZY ve EAGER sonuçları
  • N+1 select tespiti
  • JOIN FETCH ve EntityGraph
  • @Fetch(SUBSELECT)
  • DTO projection ile okuma
  • Statistics ve SQL sayacı ile ölçüm

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Özel tip eşleme

AttributeConverter ve UserType ile özel veri tiplerini veritabanına eşleyebilirsiniz.

✅
Composite key çözümü

@EmbeddedId ve @MapsId ile bileşik anahtarlı tabloları doğru modelleyebilirsiniz.

✅
Kalıtım stratejisi seçimi

SINGLE_TABLE, JOINED ve TABLE_PER_CLASS seçeneklerini SQL maliyetine göre seçebilirsiniz.

✅
Değer nesneleri

@Embeddable ile yeniden kullanılabilir değer nesneleri tanımlayabilirsiniz.

✅
Türetilmiş alanlar

@Formula, @Filter ve @SQLRestriction ile hesaplanmış ve filtreli veri modelleyebilirsiniz.

✅
İlişki ince ayarı

Cascade, orphanRemoval ve fetch ayarlarını bilinçli yapılandırabilirsiniz.

✅
N+1 tespiti

Statistics ve SQL logları ile N+1 problemini bulup JOIN FETCH ile giderebilirsiniz.

✅
Legacy şema uyumu

SecondaryTable ve NamingStrategy ile değiştirilemeyen şemalara entity eşleyebilirsiniz.

Kimler İçin Uygundur?

  • Hibernate ile çalışan ve legacy şema
  • özel veri tipleri veya karmaşık anahtar yapılarıyla uğraşan orta
  • ileri düzey Java geliştiriciler

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Hibernate ile çalışan ve legacy şema, özel veri tipleri veya karmaşık anahtar yapılarıyla uğraşan orta ve ileri düzey Java geliştiriciler.
Hibernate 5 ve 6 farkı ele alınır mı?
Evet, özellikle UserType ve @JdbcTypeCode gibi Hibernate 6 ile değişen API'ler karşılaştırmalı gösterilir.
Sadece JPA mı yoksa Hibernate'e özgü özellikler de mi var?
İkisi de var, her teknikte standart JPA karşılığı olup olmadığı belirtilir.
Hangi veritabanı kullanılır?
Laboratuvarlar H2 ve PostgreSQL ile yapılır.
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. Customized Mapping 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

Java ve JVMJava Defensive Techniques Eğitimi
Yazılım Geliştirme Eğitimleri

Java Defensive Techniques Eğitimi

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

Java Savunmacı Programlama Teknikleri eğitimi: Girdi doğrulama, defensive copy, değişmez nesneler, null güvenliği, güvenli serileştirme, SQL ve komut enjeksiyon

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

Java Design Patterns Eğitimi

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

Java Tasarım Kalıpları eğitimi: Singleton, Factory, Abstract Factory, Builder, Adapter, Decorator, Facade, Proxy, Strategy, Observer, Command, State ve Template

Detayları Gör →
Java ve JVMJava Developer Professional: Advanced Collections, Sorting, and Generics Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Advanced Collections, Sorting, and Generics Eğitimi

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

Java Professional: Gelişmiş Koleksiyonlar, Sıralama ve Generics eğitimi: List, Set, Map, Queue, Deque, TreeMap, LinkedHashMap, Comparable, Comparator, wildcard,

Detayları Gör →
Java ve JVMJava Developer Professional: Advanced Object-Oriented Concepts Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Advanced Object-Oriented Concepts Eğitimi

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

Java Professional: İleri Nesne Yönelimli Kavramlar eğitimi: Record, sealed class ve interface, enum gelişmiş kullanım, iç içe ve anonim sınıflar, arayüz...

Detayları Gör →
Java ve JVMJava Developer Professional: Concurrency and Virtual Threads Eğitimi
Yazılım Geliştirme Eğitimleri

Java Developer Professional: Concurrency and Virtual Threads Eğitimi

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

Java Professional: Eşzamanlılık ve Sanal Thread'ler eğitimi: Thread yaşam döngüsü, synchronized, volatile, Lock, atomik sınıflar, concurrent koleksiyonlar,...

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