JAVA PERSISTENCE API (JPA) EĞİTİMİ

JPA ile kalıcılık katmanını sağlam kurun

Entity eşleme, EntityManager, ilişkiler, JPQL, Criteria API, kalıtım, cascade, locking ve Spring Data JPA.

Eğitim Jakarta Persistence (JPA) standardını uçtan uca işler: persistence.xml ve EntityManagerFactory, entity ve temel eşlemeler, @Embeddable, ilişkiler (OneToOne, OneToMany, ManyToMany), kalıtım stratejileri, entity yaşam döngüsü, JPQL, Criteria API, native…

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

Eğitim Hakkında

JPA 3 / Jakarta Persistence ile uçtan uca kalıcılık

Eğitim Jakarta Persistence (JPA) standardını uçtan uca işler: persistence.xml ve EntityManagerFactory, entity ve temel eşlemeler, @Embeddable, ilişkiler (OneToOne, OneToMany, ManyToMany), kalıtım stratejileri, entity yaşam döngüsü, JPQL, Criteria API, native sorgu, cascade ve orphan removal, optimistic/pessimistic locking, Spring Data JPA entegrasyonu ve N+1, fetch stratejileri ile performans konuları.

Süre ve Format

3 Gün. Her gün dört modül; Entity Temelleri ve Yaşam Döngüsü; İlişkiler, Kalıtım ve Sorgular; Spring Data JPA ve Performans ekseninde ilerleyen uygulamalı program.

Seviye

Orta Seviye — JPA ile kalıcılık: entity, ilişkiler, JPQL, Criteria, lifecycle, transaction, Spring Data JPA ve performans

Öğrenme Metodu

Hibernate sağlayıcısıyla PostgreSQL üzerinde sipariş yönetimi modeli kurulur; üretilen SQL sürekli izlenerek her kavram test edilir.

Neden Bu Eğitim?

🗃️Standart API

Sağlayıcıdan bağımsız JPA ile taşınabilir kalıcılık yazarsınız.

🔗İlişki modelleme

Doğru fetch ve cascade seçimiyle ilişkili modelleri güvenle kurarsınız.

🌱Spring Data JPA

Repository soyutlamasıyla üretkenliği artırıp sınırlarını bilirsiniz.

Anahtar Konular

jpa eğitimijava persistence apijakarta persistencejpqlspring data jpaentity managerjpa ilişkilerhibernate jpacriteria api
“JPA bir soyutlamadır; soyutlamanın altında çalışan SQL'i görmeyen, ona hükmedemez.”

Ön Koşullar

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

1
Java

OOP, koleksiyon ve anotasyon bilgisi.

2
SQL

Join, group by ve DDL temelleri.

3
Maven

Bağımlılık yönetimi.

4
Ortam

JDK 17, Docker ile PostgreSQL ve IDE.

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 hedefiTemel
Modül 1
Yapılandırma
  • persistence.xml ve persistence unit
  • EntityManagerFactory ve EntityManager
  • Hibernate sağlayıcısı ve dialect
  • Şema üretimi ve Flyway
  • SQL loglama ve format
  • Jakarta namespace geçişi
Modül 2
Entity Eşleme
  • @Entity, @Table, @Column
  • @Id ve üretim stratejileri
  • @Enumerated, @Temporal, @Lob
  • @Embeddable ve @Embedded
  • AttributeConverter
  • Doğal ve vekil anahtar kararı
Modül 3
Yaşam Döngüsü
  • new, managed, detached, removed durumları
  • persist, merge, remove, refresh, detach
  • Persistence context ve dirty checking
  • flush modları
  • Lifecycle callback (@PrePersist)
  • merge tuzakları ve LazyInitializationException
Modül 4
Temel Sorgular
  • find ve getReference farkı
  • JPQL SELECT, WHERE, parametre
  • Sayfalama ve sıralama
  • Aggregate ve GROUP BY
  • Projeksiyon ve DTO
  • Named query
Günün hedefiİleri eşleme
Modül 1
İlişki Eşleme
  • OneToOne ve @MapsId
  • OneToMany / ManyToOne ve mappedBy
  • ManyToMany ve ek kolonlu ilişki sınıfı
  • Çift yönlü ilişki senkronizasyonu
  • Cascade ve orphanRemoval
  • Fetch LAZY / EAGER
Modül 2
Kalıtım
  • @MappedSuperclass
  • SINGLE_TABLE, JOINED, TABLE_PER_CLASS
  • Discriminator kolonu
  • Polimorfik sorgu
  • Strateji seçimi
  • Performans etkisi
Modül 3
Gelişmiş Sorgular
  • Join ve fetch join
  • Criteria API ve dinamik filtre
  • Native sorgu ve sonuç eşleme
  • Subquery, exists, in
  • Bulk update/delete
  • Entity graph
Modül 4
Eşzamanlılık
  • @Version ile optimistic locking
  • PESSIMISTIC_WRITE ve lock timeout
  • Transaction sınırları ve izolasyon
  • Yarış koşulu senaryoları
  • OptimisticLockException yönetimi
  • Retry stratejisi
Günün hedefiUygulama
Modül 1
Spring Data JPA
  • JpaRepository ve sorgu metodu türetme
  • @Query ve @Modifying
  • Pageable, Sort, Slice
  • Projections (interface, DTO)
  • Specification ile dinamik sorgu
  • Auditing (@CreatedDate)
Modül 2
Transaction
  • @Transactional ve propagation
  • readOnly ve flush etkisi
  • Rollback kuralları
  • Self-invocation tuzağı
  • Transaction ve event
  • Open Session in View kararı
Modül 3
Performans
  • N+1 tespiti ve çözümü
  • Batch fetch ve toplu yazma
  • Second-level cache
  • İndeks ve execution plan
  • DTO projeksiyonu ile okuma
  • Hibernate statistics
Modül 4
Test ve Bitirme
  • @DataJpaTest ve Testcontainers
  • Test verisi hazırlama
  • Bitirme uygulaması: sipariş modeli
  • SQL çıktısı inceleme
  • Kod incelemesi
  • Sonraki adımlar

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
JPA yapılandırma

EntityManager ve persistence unit yapılandırabilirsiniz.

🎯
Entity eşleme

Sınıfları tablolara doğru eşleyebilirsiniz.

🧩
Yaşam döngüsü

Entity durumlarını ve merge davranışını açıklayabilirsiniz.

⚙️
İlişkiler

İlişkileri doğru taraf, cascade ve fetch ile kurabilirsiniz.

🔍
Sorgular

JPQL ve Criteria ile dinamik sorgular yazabilirsiniz.

🛠️
Locking

Optimistic ve pessimistic locking uygulayabilirsiniz.

📈
Spring Data JPA

Repository ve Specification ile veri erişimi yazabilirsiniz.

🚀
Performans

N+1 gibi sorunları tespit edip çözebilirsiniz.

Kimler İçin Uygundur?

  • Kalıcılık katmanını JPA
  • geliştirecek veya mevcut bir JPA kodunu iyileştirecek Java geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Kalıcılık katmanını JPA ile geliştirecek veya mevcut bir JPA kodunu iyileştirecek Java geliştiricileri için uygundur.
Eğitime katılmak için hangi ön bilgiler gerekir?
Java: OOP, koleksiyon ve anotasyon bilgisi. SQL: Join, group by ve DDL temelleri.
Eğitim nasıl ilerler ve kaç gün sürer?
Eğitim 3 gün sürer; her gün dört modülden oluşur ve her modülde anlatım ile uygulamalı çalışma birlikte yürür. Günler sırasıyla: Entity Temelleri ve Yaşam Döngüsü; İlişkiler, Kalıtım ve Sorgular; Spring Data JPA ve Performans.
Eğitim sonunda sertifika verilir mi?
Evet, katılım ve başarı koşullarını sağlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.
Eğitimde hangi JPA sağlayıcısı kullanılır?
Hibernate ORM kullanılır; gösterilen kavramlar JPA standardına dayandığı için EclipseLink gibi diğer sağlayıcılarda da geçerlidir.

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. Java Persistence API (JPA) 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 JVMGoogle Workspace Spring Updates Eğitimi
Yazılım Geliştirme Eğitimleri

Google Workspace Spring Updates Eğitimi

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

Google Workspace güncellemeleri eğitimi: Gmail, Chat, Meet, Drive etiketleri, Docs akıllı çipler, Sheets tabloları, Gemini ve yönetici konsolu güvenlik ayarları

Detayları Gör →
Java ve JVMGroovy Programlama Eğitimi
Yazılım Geliştirme Eğitimleri

Groovy Programlama Eğitimi

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

Groovy programlama eğitimi: dinamik tipleme, closure, GString, koleksiyonlar, trait, metaprogramming, DSL, Spock testleri ile Gradle ve Jenkins pipeline betikle

Detayları Gör →
Java ve JVMHandling Errors: Handling Exceptions in Java Eğitimi
Yazılım Geliştirme Eğitimleri

Handling Errors: Handling Exceptions in Java Eğitimi

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

Java exception yönetimi eğitimi: checked ve unchecked, try-with-resources, özel exception tasarımı, exception zincirleme, SLF4J loglama ve assertThrows testleri

Detayları Gör →
Java ve JVMHTTP Requests in Java: HTTP Requests with Java's HttpClient Eğitimi
Yazılım Geliştirme Eğitimleri

HTTP Requests in Java: HTTP Requests with Java's HttpClient Eğitimi

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

Java HttpClient eğitimi: java.net.http, GET ve POST, JSON ile Jackson, sendAsync ve CompletableFuture, timeout, retry, Bearer token ve WireMock ile test.

Detayları Gör →
Java ve JVMHTTP Requests in Java: Sending Simple HTTP Requests Eğitimi
Yazılım Geliştirme Eğitimleri

HTTP Requests in Java: Sending Simple HTTP Requests Eğitimi

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

Java ile basit HTTP istekleri eğitimi: HTTP temelleri, HttpURLConnection, HttpClient ile GET ve POST, JSON ayrıştırma, timeout ve API çağıran komut satırı uygul

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