BUILDING USER INTERFACES WITH JSF: INTEGRATING A DATABASE WITH A JSF APP EĞİTİMİ

JSF arayüzünü veritabanına bağla

JSF ile JPA entity, DataSource, CRUD formları, lazy dataTable, ilişkili seçim listeleri ve transaction yönetimi.

JSF Uygulamasına Veritabanı Entegrasyonu eğitimi 2 günlük uygulamalı programda veritabanı ve datasource, jpa entity modeli, servis ve transaction, jsf-servis entegrasyonu gibi konuları kapsar.

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

Eğitim Hakkında

JSF + JPA entegrasyonu, CRUD, sayfalama ve transaction

Bu eğitim, bir JSF uygulamasını veritabanına bağlayarak tam işlevli CRUD arayüzü geliştirmeyi öğretir. Sunucuda DataSource tanımı ve JNDI, persistence.xml, JPA entity ve ilişkiler, CDI ile EntityManager enjeksiyonu, servis (@Stateless/@Transactional) ve repository katmanı ele alınır. JSF tarafında liste/ekle/düzenle/sil formları, h:dataTable ve lazy yükleme, p:dataTable LazyDataModel ile sunucu tarafı sayfalama ve filtreleme, ilişkili entity için selectOneMenu ve converter, ViewScoped bean ile düzenleme akışı, doğrulama, hata yönetimi, LazyInitializationException ve Open Session in View çözümleri uygulanır.

Süre ve Format

2 Gün. Her gün dört modül; katılımcılar veri katmanı kurulumu konusundan başlayıp crud arayüzü ve performans konusuyla tamamlar.

Seviye

Orta Seviye — JSF uygulamasında JPA/JDBC ile veritabanı entegrasyonu, CRUD, ilişkiler, sayfalama ve transaction.

Öğrenme Metodu

Bir müşteri-sipariş uygulaması PostgreSQL üzerinde adım adım geliştirilir; SQL logları ve yaşam döngüsü çıktılarıyla veri akışı izlenir.

Neden Bu Eğitim?

🔗Uçtan Uca Akış

Arayüzden veritabanına tam veri akışını çalışan bir uygulamada kurarsınız.

📄Sunucu Sayfalama

Büyük tabloları LazyDataModel ile bellek dostu listelersiniz.

🛠️Hata Çözümü

LazyInitializationException ve transaction sınırı sorunlarını çözersiniz.

Anahtar Konular

jsf veritabanıjsf jpajsf crudprimefaces lazydatamodeljsf datatablejsf hibernatejakarta faces jpajsf transactionjsf postgresqljsf uygulama geliştirme
“Arayüz güzel olabilir; ama gerçek değer, arkasındaki doğru veridedir.”

Ön Koşullar

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

1
Java Temeli

Sınıf, koleksiyon ve istisna yönetimi gibi temel Java bilgisi beklenir.

2
HTTP Bilgisi

İstek-yanıt modeli, durum kodları ve başlık kavramlarına aşinalık faydalıdır.

3
Uygulama Sunucusu

Tomcat, Jetty veya benzeri bir servlet konteyneri kurulumu yapılabilecek ortam gerekir.

4
Araçlar

Maven ile proje oluşturma ve IDE üzerinden dağıtım yapma deneyimi yararlıdır.

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ı, JSF uygulamasına JPA tabanlı veri katmanı ekler ve transaction destekli servisleri yazar.
Modül 1
Veritabanı ve DataSource
  • PostgreSQL şeması ve örnek veri
  • Sunucuda DataSource tanımı (WildFly/Payara)
  • JNDI adı ve persistence.xml bağlantısı
  • Bağlantı havuzu ayarları
  • Flyway ile şema versiyonlama
  • JDBC sürücüsü modülü kurulumu
Modül 2
JPA Entity Modeli
  • Müşteri, Sipariş, Ürün entity'leri
  • @OneToMany ve @ManyToOne ilişkileri
  • @NamedQuery ve Criteria sorguları
  • Bean Validation anotasyonları
  • Enum ve tarih alanları
  • equals/hashCode tasarımı
Modül 3
Servis ve Transaction
  • CDI ile EntityManager enjeksiyonu (@PersistenceContext)
  • @Stateless EJB veya @Transactional servis
  • Repository katmanı ve DAO deseni
  • Transaction sınırının servis katmanında olması
  • Optimistic locking: @Version
  • Servis testleri (Arquillian veya Testcontainers)
Modül 4
JSF-Servis Entegrasyonu
  • Backing bean'den servis çağırma
  • @ViewScoped bean ve serileştirme gereksinimi
  • DTO ve entity'yi doğrudan gösterme kararı
  • Hata yakalama ve FacesMessage
  • Mesajların flash scope ile taşınması
  • Proje yapısı ve katman bağımlılıkları
Günün hedefiKatılımcı, CRUD formlarını, lazy yüklemeli tabloları ve ilişkili seçim alanlarını geliştirir ve yaygın hataları giderir.
Modül 1
Liste ve CRUD Formları
  • h:dataTable ile kayıt listesi
  • Yeni kayıt formu ve doğrulama
  • Düzenleme akışı: viewParam ile id geçirme
  • Silme onayı ve p:confirmDialog
  • Başarı/hata mesajları
  • Çift gönderimi ve çift tıklamayı önleme
Modül 2
Sayfalama ve Filtre
  • LazyDataModel ile sunucu tarafı sayfalama
  • load() metodunda first, pageSize, sortBy, filterBy
  • JPA setFirstResult/setMaxResults ile bağlama
  • Toplam kayıt sayısı (COUNT) sorgusu
  • Kolon bazlı filtre ve sıralama
  • Büyük tabloda performans ölçümü
Modül 3
İlişkili Veri
  • selectOneMenu ve f:selectItems ile ilişkili entity
  • Özel Converter ile entity <-> id dönüşümü
  • Bağımlı açılır listeler (ajax)
  • Detay satırı: p:rowExpansion
  • Master-detail sayfa tasarımı
  • Çoka-çok ilişki için p:pickList
Modül 4
Sorun Giderme ve Üretim
  • LazyInitializationException ve JOIN FETCH çözümü
  • N+1 sorgularını SQL logunda yakalama
  • Open Session in View ve alternatifleri
  • Eşzamanlı düzenleme çakışması
  • Bağlantı sızıntısı ve havuz tükenmesi
  • Dağıtım, yapılandırma ve kontrol listesi

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Veri Katmanı

DataSource ve JPA ile JSF uygulamasına veritabanı bağlayabilirsiniz.

🧠
Entity Modeli

İlişkili entity'leri doğru eşleyip doğrulayabilirsiniz.

⚙️
Servis Katmanı

Transaction sınırlarını servis katmanında yönetebilirsiniz.

🔍
CRUD Formları

Liste, ekleme, düzenleme ve silme formlarını geliştirebilirsiniz.

🛠️
Lazy Tablo

LazyDataModel ile sunucu tarafı sayfalama ve filtreleme yapabilirsiniz.

📈
İlişkili Seçim

Converter ile entity seçim listeleri oluşturabilirsiniz.

🧩
Hata Çözümü

LazyInitializationException ve N+1 sorunlarını giderebilirsiniz.

🚀
Eşzamanlılık

Optimistic locking ile eşzamanlı düzenleme çakışmalarını yönetebilirsiniz.

Kimler İçin Uygundur?

  • JSF temellerini bilen ve gerçek bir veritabanı ile çalışan
  • kayıt yönetimi yapan JSF uygulaması geliştirmek isteyen Java geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
JSF temellerini bilen ve gerçek bir veritabanı ile çalışan, kayıt yönetimi yapan JSF uygulaması geliştirmek isteyen Java geliştiricileri için uygundur.
Bu eğitim JSF başlangıç eğitiminin devamı mı?
Evet, JSF temellerini bilmeyi varsayar ve odağı veritabanı entegrasyonuna, CRUD ve sayfalamaya kaydırır.
PrimeFaces zorunlu mu?
LazyDataModel ve gelişmiş tablo özellikleri için PrimeFaces kullanılır; temel akış JSF standart bileşenleriyle de gösterilir.
Eğitim için hangi ön bilgi ve ortam gerekir?
Sınıf, koleksiyon ve istisna yönetimi gibi temel Java bilgisi beklenir. İstek-yanıt modeli, durum kodları ve başlık kavramlarına aşinalık faydalıdır. Tomcat, Jetty veya benzeri bir servlet konteyneri kurulumu yapılabilecek ortam gerekir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir. 2 günlük program boyunca uygulama çalışmalarının tamamlanması beklenir.

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. Building User Interfaces with JSF: Integrating a Database wi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 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 JVMPattern Matching & Java Interoperability Eğitimi
Yazılım Geliştirme Eğitimleri

Pattern Matching & Java Interoperability Eğitimi

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

Java pattern matching ve interoperability eğitimi: switch kalıpları, record pattern, regex, Kotlin/Scala çağırma, FFM API ve ServiceLoader.

Detayları Gör →
Java ve JVMProcessing Batch Data: Spring Batch Configurations and Transformations Eğitimi
Yazılım Geliştirme Eğitimleri

Processing Batch Data: Spring Batch Configurations and Transformations Eğitimi

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

Spring Batch ileri eğitim: ItemProcessor dönüşümleri, skip/retry, koşullu akış, StepScope, partitioning ve CompositeItemWriter uygulamalıdır.

Detayları Gör →
Java ve JVMProcessing Batch Data: The Fundamentals of Spring Batch Eğitimi
Yazılım Geliştirme Eğitimleri

Processing Batch Data: The Fundamentals of Spring Batch Eğitimi

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

Spring Batch temelleri eğitimi: Job, Step, chunk işleme, ItemReader/ItemWriter, JobRepository, listener'lar ve SpringBatchTest ile test.

Detayları Gör →
Java ve JVMRabbitMQ ile Java ve Spring Eğitimi
Yazılım Geliştirme Eğitimleri

RabbitMQ ile Java ve Spring Eğitimi

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

RabbitMQ ile Java ve Spring eğitimi: AMQP, exchange türleri, Spring AMQP, mesajlaşma desenleri, ack/confirm, DLQ, quorum queue ve izleme.

Detayları Gör →
Java ve JVMRed Hat Application Development I: Programming in Java EE (AD183) Eğitimi
Yazılım Geliştirme Eğitimleri

Red Hat Application Development I: Programming in Java EE (AD183) Eğitimi

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

Red Hat Java EE uygulama geliştirme eğitimi (AD183): Servlet, JSF, CDI, JPA, EJB, JAX-RS, JMS, güvenlik ve Arquillian testleri.

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