Závěr
Výhody a nevýhody
Poznámka: Tato část je doslovně převzata ze zahraničních materiálů, které obvykle čišely nadšením pro JSP a Javu
vůbec. Bohužel žádný z nich se nepokoušel o porovnání JSP s PHP, vždy bylo JSP srovnáváno s ASP. Moje vlastní poznámky k
jednotlivýn bodům budou uvedeny v hranatých závorkách.
Servletů proti CGI
-
Nenáročnost. U CGI je při každém požadavku na server vytvořen nový proces, u servletů pouze vlákno. Navíc
při N současných požadavcích na stejný zdroj bude u CGI řešení spuštěno N procesů, zatímco u servletů bude sice vytvořeno
deset vláken, ale samotná třída servletu bude v paměti nahrána pouze jednou.
[Otázka ovšem zní, zda rozběhnutí javovského vlákna nemůže být někdy náročnější než rozběhnutí procesu OS, zvláště na nějakém slabším HW, na kterém ale třeba půjde celkem slušně rozběhnout Apache s Perlem.] -
Snadnost psaní. Javu už známe.
[Ovšem C nejspíš známe všichni rovněž, což už je jenom krůček k PHP; navíc mnozí už známe i to PHP.] -
Síla. Java je plnohodnotný a velice silný jazyk.
[Na druhou stranu na webu člověk ne vždy využije úplně všechno, co Java nabízí, nehledě na to, že i PHP se v poslední době rozrostlo v čím dálopravdovější
jazyk.] -
Přenositelnost.
[To splňuje PHP rovněž.] -
Cena. Přidání podpory servletů do web serverů bývá levné nebo dokonce úplně zadarmo.
[Přidání PHP do Apache je v podstatě samozřejmostí, což obvykle postačí, do ostatních serverů by snad šlo taky vměstnat.]
JSP proti ASP
-
Široká podpora ze strany web serverů.
[Jak již bylo zmíněno, podpora PHP bude pravděpodobně ještě lepší než u JSP, už jenom vzhledem k vůdčímu postavení Apache mezi www servery. Kromě toho existují i projekty se snahou o zprovoznění ASP i na non-MS serverech.] -
Platformová nezávislost.
[Opět, platí i pro PHP.]
Servery
Free hosting s JSP
O ničem nevím. :-(
Placený hosting s JSP
Existuje, obvykle za příplatek k obyčejnému hostingu.
Vlastní stroj
Nejpopulárnějším serverem s podporou servletů a JSP je Apache Tomcat. Instalace (alespoň z binárního balíčku) je velice
snadná. Jediná konfigurace, kterou je potřeba provést, je nastavení proměnných JAVA_HOME a CATALINA_HOME na umístění (po
řadě) domovského adresáře s J2SDK a s Tomcatem. Poté stačí spustit přiložený script
startup
a v prohlížeči
zadat adresu http://localhost:8080/. Pouze se může stát, že na Windows dojde paměť pro systémové proměnné a že
ji bude potřeba zvětšit.
Standardní instalace J2SDK ovšem neobsahuje podporu pro kompilaci servletů. Je potřeba ze stránek Sunu stáhnout balík
servlet.jar a nainstalovat do adresáře jre/lib/ext (vztaženo k domovskému adresáři J2SDK). Poté je již možno servlety
kompilovat. Zároveň však tímto zásahem přestane fungovat Tomcat. Řešením je vzetí balíku servlet.jar z instalace Tomcatu
a nainstalování jej do zmiňovaného adresáře. Poté funguje jak kompilace servletů, tak Tomcat.
Jiným řešením je pochopitelně nakopírovat servlet.jar vcelku kamkoliv a jeho umístění přidat do proměnné
Jiným řešením je pochopitelně nakopírovat servlet.jar vcelku kamkoliv a jeho umístění přidat do proměnné
CLASSPATH
, případně cestu k němu určit na příkazové řádce při kompilaci.
Odkazy
- java.sun.com
- A Tutorial on Java Servlets and Java Server Pages (JSP)
- The Apache Jakarta Project
- Okoun (na sourceforge). Příklad jednoho ne-enterprise projektu psaného v JSP. Okoun je diskusní server původně napsaný v PHP, leč tato verze byla prohlášena za nadále nevyvíjitelnou a vznikl tento nový projekt přepisu Okouna do Javy. Kdo by chtěl, může se zapojit. :-) Od nedávných dní už tento nový Okoun běží v testovacím provozu na adrese osklivy.okoun.cz současně se starým.
- ondrej.kucera@centrum.cz (popř. kuceo9am@ss1000.ms.mff.cuni.cz)