Keşfet

JSF, JSP ve Servlet arasındaki fark nedir?

Webci-Abi

Yeni Üye
Katılım
1 Nis 2021
Mesajlar
93
Tepkime puanı
0
Puanları
0
Yaş
29
Bu üç kavram genellikle karışıtırılır, bu karışıklık kimi zaman yanlış anlamalara da neden olabiliyor. Haklı karışıklığın sebebi, bu üç kavramın da birbirine çok yakın olması.

JSP (JavaServer Pages)

JSP, bir java sunucusu üzerinde çalışan HTML, CSS, Javascript çıktısı üretebilen, Java gösterim teknolojisi olarak tanımlanabilir. JSP, etiketler (tablibs) ve Java kodlarından oluşur, programın akışını, dinamik çıktı üretilmesini vs. etiketler ve java kodu ile yapılır. Ancak JSP içinde doğrudan java kodu yazmak yerine, bu kodların JSP içine dahil edilmesi tavsiye edilir. Yani JSP içine veritabanı bağlantıları için java kodu yazmak yerine, bu kodları bir java class'ı içine yazıp, JSP içinden bu class'ın çağırılması tavsiye edilir. JSP'nin etiket kütüphanesi JSTL (JavaServer Pages Standard Tag Library) olarak anlandırılır.

Bir JSP kodu sunucudan ilk defa çağırıldığında veya web sunucu ilk defa başlatıldığında, JSP kodu HttpServlet sınıfından türetilerek bir class olarak oluşturulur ve sunucunun yaşan süresi boyunca çalışmaya devam eder.

Servlet

Servlet, Java application programming interface (API), sunucu üzerinde çalışan, dinamik içerik üreten bir web bileşenidir. HttpServlet, servlet'e örnek olarak verilebilir. Servletler, Java'nin, CGI (Common Gateway Interface) programlamasına alternatifi olarak oluşturulmuşlardır. Web sunucusu ile diğer ortakat uygulamaları ve veri tabanı arasında yer alırlar.

Örnekle açıklayacak olursak, bir Servlet ilk defa çağırıldığında veya Tomcat gibi web sunucu ilk defa çalıştırıldığında, Servlet'in bir örneği (instance) oluşturulur ve sunucunun yaşam süresi boyunca hazırda bekler. Eğer o servlet için bir istek olursa, yanıt verir. Servlet'lere istekler HttpServletRequest arayüzünden gelir, servlet'in cevabı ise HttpServletResponse arayüzünden döndürülür.

JSF (JavaServer Faces)
JSF ise Servlet ve JSP'den biraz daha farklı olarak, arka planda Servlet ve ön yüzde JSP etiketlerini kullanabilen, bileşen temelli bir MVC çatısıdır. Arka plan kodunu, tasarımı ve gösterimi ayrı ayrı yapabilmek için geliştirilmiş bir frameworkdur. Kendi içinde hazır kütüphaneleri vardır ve siz ilgili kütüphaneleri ekleyip, SJF'ye uygun etiketler ile geliştirmenizi yaparsınız. JSF gibi çatıları kullanmanın avantajı, ihtiyaç duyabileceğiniz bazı bileşenlerin daha önceden hazır paketler halinde sunulmasıdır. Örneğin geliştirdiğiniz uygulamada veri doğrulaması yapmak istiyorsanız, bunun için JSF içindeki hazır yapıyı kullanabilirsiniz. JSF, temel olarkak FacesServlet sınıfını kullanır.

Yukarıda kısaca açıklamaya çalıştığımız bu üç kavram genellikle karıştırılır. Umarım aradaki farkı doğru bir şekilde anlatabilmişizdir.
 
Güzel bilgiler için teşekkürler
 

Konu görüntüleyen kullanıcılar

Benzer konular

Geri
Üst