Bilgi Java Web Teknolojileri: JSF – JSP – Servlet
- Katılım
- 11 Mar 2024
- Mesajlar
- 117
- Tepkime puanı
- 47
- Puan
- 18
- Cinsiyet
- Erkek
- Takım
- Beşiktaş
- İlgi Alanı
- C#
Önce büyük resmi görelim
Bunların üçü de Java ile web sitesi / web uygulaması yapmak için kullanılır.
Servlet Nedir? (Temel yapı taşı)
Kısaca:
Servlet, Java ile yazılan ve
tarayıcıdan gelen isteği (request) karşılayıp cevap (response) dönen sunucu tarafı koddur.
Ne yapar?
- Formdan gelen veriyi alır
- Veritabanına bağlanır
- İş mantığını çalıştırır
- Sonucu kullanıcıya gönderir
Örnek:
Kullanıcı:
/login
isterse
Servlet:
- kullanıcı adı / şifreyi kontrol eder
- doğruysa yönlendirir
- yanlışsa hata verir
Teknik olarak:
- HttpServlet sınıfını kullanır
- Java kodudur
- HTML üretir veya yönlendirme yapar
JSP Nedir? (Görünüm – View)
Kısaca:
JSP (JavaServer Pages),
HTML içine Java kodu yazmanı sağlar.
Ne yapar?
- Ekranda görünen sayfayı oluşturur
- Dinamik içerik gösterir
Örnek:
<h1>Merhaba ${kullaniciAdi}</h1>
Özellikler:
- HTML ağırlıklıdır
- Java kodu gömülebilir
- Servlet’e derlenir (arka planda JSP → Servlet olur)
JSF Nedir? (Modern ve kapsamlı)
Kısaca:
JSF (JavaServer Faces),
Java’nın bileşen tabanlı, MVC destekli, daha modern web framework’üdür.
Ne yapar?
- Formlar
- Butonlar
- Validasyon
- Sayfa yönlendirme
- State (durum) yönetimi
hepsini otomatik ve düzenli şekilde yapar.
Örnek:
<h:inputText value="#{user.name}" />
<h:commandButton value="Giriş" action="#{user.login}" />
Özellikler:
- XHTML kullanır
- Managed Bean’ler vardır
- Az kodla çok iş
- Kurumsal projelerde çok kullanılır
Birlikte Nasıl Çalışırlar?
Klasik yapı (Eski ama hâlâ var):
Tarayıcı
↓
Servlet (iş mantığı)
↓
JSP (ekran)
JSF yapısı:
Tarayıcı
↓
JSF (Controller + View)
↓
Managed Bean (iş mantığı)
Kısa Karşılaştırma
| Özellik | Servlet | JSP | JSF |
|---|---|---|---|
| Amaç | İş mantığı | Görünüm | Komple framework |
| Zorluk | Orta | Kolay | Orta–Zor |
| HTML | |||
| Java | |||
| Modernlik |
Hangisini Ne Zaman Kullanmalı?
Servlet:
- API yazıyorsan
- Backend ağırlıklı iş yapıyorsan
JSP:
- Basit web arayüzleri
- Öğrenmesi kolay olduğu için eğitim amaçlı
JSF:
- Kurumsal projeler
- Form + validasyon ağırlıklı sistemler
- MVC düzeni istiyorsan
Kısa Özet
Servlet → Mantık
JSP → Ekran
JSF → Her şeyin daha düzenli hali