Servlet və Jsp

Salam. Mən tam olaraq Servlet və Jsp arasında fərqin nə olduğunu bilmək istərdim. Ümumi fərqi bilirem , sadece mənə hansının hansı vəziyyətlərdə istifade olunması maraqlıdı ? Birdəki jsp-ni tam olaraq php - nin equivalenti saymaq olar, yəni jsp köməyi ilə nə eləmək olursa onu php ilə də etmək olur?

Verilmiş cavablar və yazılan şərhlər (3 cavab var)

Ramin Orucov (2011-05-10 22:05:28)
Serverdə Java web texnologiyalarını dəstəkləyən web container (Tomcat, Jetty və s.) və ya application server(JBoss, Glassfish, IBM Websphere, Oracle Weblogic və s.) olmalıdır. Tomcat üçün rahatdır, web proyektin war faylını hazırlayıb webapps qovluğuna qoymaq kifayətdir. Digər serverlərin isə dokumentasiyasına baxmaq lazımdır, fərqli ola bilər.

Xeyyam Quliyev (2011-05-10 21:46:42)
Ətraflı cavaba görə təşəkkürlər. Birdə ki, Servlet - in hosting prossesi nece baş verir. Məsələn tutaq ki, Online Judge System - ləri ( amc.timus.ru tipli sayt ) , servletsiz mümkün deyil yazmaq. Belə servletlər server-ə necə yüklənir ?

Ramin Orucov (2011-05-10 21:34:40)
Servlet ilk çıxan java web texnologiyasıdır. Servlet adi Java sinifidir, amma HttpServlet sinifindən törənməlidir. Java kodu içərisində html kodu yazırsınız. Əsasa mənfi cəhəti elə budur. Səhifənin dizaynı və ya hər hansı bir yeri dəyişsə, servlet kodunda uyğun yeri dəyişib yenidən compile etməlisiniz və serverə deploy etməlisiniz. JSP texnologiyası məhz bu problemi aradan qaldırmaq üçün yaradılıb. Html səhifəsi daxilində Java və JSP kodları yaza bilərsiniz. JSP səhifəsi ilk dəfə işləyəndə tərcümə olunur, Java servlet kodu hazırlanır, daha sonra bu kod kompilyasiya olunur və class faylı alınır, bu class faylı da yaddaşa yüklənib icra edilir. Rahatlıq ondadır ki, siz JSP səhifəsində dəyişiklik edib səhifəni yeniləsəniz, bütün bu proseslər arxa planda avtomatik baş verir. Texniki olaraq elə bir şey yoxdur ki, onu Servlet ilə edəsiniz amma JSP ilə edə bilməyəsiniz. Servlet biznes məntiqi,verilənlər bazası ilə işləmək, müxtəlif qərarlar vermək, istifadəçini müəyyən şərtlərə bağlı olaraq lazımi səhifələrə yönləndirmək, dinamik şəkil, pdf, excel və s. fayl generasiya etmək üçün daha uyğundur. JSP isə daha çox dinamik html səhifələri hazırlamaq üçün istifadə olunur. JSP ilə PHP müəyyən dərəcədə müqayisə etmək olar, amma JSP texnologiyasında imkanlar daha çoxdur. Məsələn PHP-də sessiyaların idarəsi Servlet, JSP-dəki kimi flexible deyil, event/attribute listener-lər yoxdur. JSP səhifələri yuxarıda yazdığım kimi ilk dəfə işləyəndə Java Servletə çevirilir və servlet işləyir. PHP isə script dilidir və hər dəfə işləyəndə tərcümə olunub işləyir, performans baxımından daha zəif işləyir. JSP üçün Java dilini bilmək lazımdır. PHP üçün əsas üstünlük hosting qiymətlərinin ucuz olması və JSP-yə nəzərən öyrənməyin daha rahat olmasıdır :)

Mövzu üzrə bənzər suallara da baxa bilərsiniz.

İkinci proqramlaşdırma dili

Hansı encryption

JAVA-da müəyyən malın adı və qiymətini saxlamaq üçün massiv tipli alternativ

Android studio install

Java-da yazdığım proqramı MAC üçün necə edim?

Döngü içində çağrılan method hamısı eyni vaxtda işə düşür.