Hlavný rozdiel: "JSP (Java Server Pages)" je server-side technológia, zatiaľ čo "Servlet" je malý program, ktorý beží na serveri. Obe tieto technológie Java sa používajú na vytváranie dynamických webových stránok.
Spoločnosť Sun Microsystems vydala JSP (Java Server Pages) v roku 1999. JSP sú skriptovacie jazyky Java, ktoré sa vo všeobecnosti používajú na vytváranie webových stránok typu HTML, XML alebo iných typov dokumentov. Tieto stránky majú dynamickú skriptovacia schopnosť oddeliť logiku stránok od logiky statických komponentov stránky. Ich základný dizajn skutočne robí HTML funkčnejší a robí databázové dotazy dynamickejšími. Na nasadenie a spustenie stránok Java Server (JSP) je potrebný kompatibilný webový server s servletovým kontajnerom (napríklad Apache Tomcat alebo Jetty). JSP je architektúra vysokej úrovne abstrakcie Java Servlet. Počas prevádzky sa tieto JSP prekladajú do servletov. Servlety JSP sú ukladané do vyrovnávacej pamäte a znovu použité, kým sa nezmení pôvodný JSP. JSP môže byť použitý samostatne a môže byť tiež videný ako súčasť návrhu server-side model-view-controller. Programátori využívajú kód Java spolu s niektorými vopred definovanými krokmi na vytvorenie stránok obsahových webových značiek; tieto stránky sa ďalej zostavujú a spúšťajú na strane servera a doručujú dokumenty.
Stránky JSP používajú niekoľko oddeľovačov skriptovacích funkcií. Najzákladnejšia je, ktorá obsahuje skript JSP. Skript je fragment kódu Java, ktorý sa spustí, keď používateľ požaduje stránku.
Nasledujúce platí pre slučku na stránke JSP:
Počet troch:
<% pre (int i = 1; i
Toto číslo je <% = i%>.
OK.
Jeho výstup by bol reprezentovaný ako:
Počet troch:
Toto číslo je 1.
Toto číslo je 2.
Toto číslo je 3.
OK.
Servlets sú malé Java programy, ktoré súvisia s Java Applets. V podstate bežia v prostredí webového servera. Špecifikácia Servlet bola vytvorená spoločnosťou Sun Microsystems, verzia 1.0 bola dokončená v júni 1997. Jeho začiatočná verzia bola 2, 3, zatiaľ čo jej súčasná verzia od roku 2013 bola 3, 1. Servlet je trieda Java, ktorá slúži na rozšírenie možností servera. Odpovedajú na akékoľvek požiadavky v podobe vhodných odpovedí. Základný balík Servlet definuje objekty Java, ktoré reprezentujú požiadavky servletu a odpovede. Servlets môžu byť automaticky generované z Java Server Pages (JSP) pomocou kompilátora JavaServer Pages. Z technického hľadiska môže byť "servlet" definovaný ako trieda Java v jazyku Java EE, ktorý zodpovedá rozhraniu Java Servlet API.
Servlets sú komunikátory cez protokol klient-server a najčastejšie sa používajú s protokolom HTTP. Ich základné účely sú:
- Spracovávať alebo ukladať a odosielať údaje formátu HTML.
- Poskytnúť dynamický obsah, napríklad výsledky databázového dotazu.
- Spravujte informácie o stave, ktoré neexistujú v HTTP protokole bez štátnej príslušnosti, ako je napĺňanie článkov do nákupného košíka príslušného zákazníka.
Servlet pracuje na životnom cykle servletu, v zásade existujú tri metódy servletu, ktoré definujú životný cyklus servletu:
- init (),
- služba () a
- zničiť ()
Porovnanie medzi JSP a Servlet:
JSP | servlet | |
Čo sú zač | JSP je skriptovací jazyk webových stránok, ktorý sa zvyčajne používa na vytváranie dynamického webového obsahu. | Servlets sú Java programy, ktoré sú už kompilované a ktoré tiež vytvárajú dynamický webový obsah. |
typicky | JSP je zvyčajne viac zameraná na zobrazovanie informácií. | Servlet sa viac orientuje na spracovanie informácií. |
Role v MVC (Model View Controller) | JSP pôsobí ako divák. | Servlet pôsobí ako regulátor. |
Platné v čase | Väčšinou sú preferované, ak nie je potrebná veľa spracovania údajov. | Väčšinou sú výhodné, ak je zapojených viac spracovania a manipulácie. |
Rýchlosť jazdy | JSP beží pomalšie v porovnaní so serverom Servlet. JSP sa kompiluje do Java servletov. | Servlets bežia rýchlejšie v porovnaní s JSP. |
Kódové komplikácie | Programovanie kódu je jednoduché v porovnaní so servletmi. | Programovanie kódu je náročné v porovnaní s programovaním JSP. |
zariadenie | Tu môžeme vytvoriť vlastné značky, ktoré môžu priamo nazvať Java fazuľa. | Žiadne takéto zariadenie nie je dostupné v servletoch. |
Pozostáva z | JSP sú reprezentácie Java HTML zmiešané s JAVA skripty. | Servlet sú plne funkčné Java kódy. |
Konzistencia objektov | JSP má implicitné objekty. | Servlets nemá taký typ objektov. |
Príklady | Zobrazenie prehľadu. | Spracovať formulár odoslaný používateľom. |