Oluline erinevus: „JSP (Java Server Pages)” on serveripoolne tehnoloogia, samas kui „Servlet” on väike programm, mis töötab serveris. Mõlemat Java-tehnoloogiat kasutatakse dünaamiliste veebilehtede loomiseks.

Sun Microsystems avaldas 1999. aastal JSP-i (Java Server Pages). JSP-d on Java-skriptikeeled, mida tavaliselt kasutatakse HTML-, XML- või muu dokumenditüübi veebilehtede loomiseks. Neil lehekülgedel on dünaamiline skriptimisvõime, mis võimaldab lehekülje loogikat lahutada lehekülje staatiliste komponentide omadest. Nende põhiline disain muudab HTML-i funktsionaalsemaks ja muudab andmebaasi päringud dünaamilisemaks. Java Server Pages'i (JSP) juurutamiseks ja käivitamiseks on vajalik servlet-konteineriga ühilduv veebiserver (nt Apache Tomcat või Jetty). JSP on Java Servlet'i kõrgetasemeline abstraktsiooniarhitektuur. Runtime ajal tõlgitakse need JSPd servletitesse. JSP servletid salvestatakse vahemällu ja neid kasutatakse uuesti, kuni algne JSP on muudetud. JSP-d saab kasutada iseseisvalt ja seda võib vaadelda ka serveri poolse mudeli-kuvari-kontrolleri disaini osana. Programmeerijad kasutavad Java-koodi koos mõnede eelnevalt määratletud toimingutega veebimärgistuse sisu lehekülgede loomiseks; need leheküljed kompileeritakse ja täidetakse serveri poolel dokumentide edastamiseks.
JSP-leheküljed kasutavad skriptimisfunktsioonide jaoks mitmeid eraldajaid. Kõige lihtsam on see, mis sisaldab JSP-skripti. Skriptil on Java-koodi fragment, mis käivitatakse, kui kasutaja lehekülge taotleb.
JSP lehel olevale silmusele kehtib järgmine:
Arvestades kolme:
<% (int i = 1; i
See number on <% = i%>.
OKEI.
Selle väljundit esindataks järgmiselt:
Arvestades kolme:
See number on 1.
See number on 2.
See number on 3.
OKEI.

Servletid on väikesed Java-programmid, mis on seotud Java-aplettidega. Nad töötavad põhimõtteliselt veebiserveri keskkonnas. Servleti spetsifikatsiooni on loonud Sun Microsystems, versioon 1.0 viidi lõpule 1997. aasta juunis. Selle algversioon oli 2, 3, samal ajal kui selle praegune versioon alates 2013. aastast oli 3, 1. Servlet on Java klass, mida kasutatakse serveri võimete laiendamiseks. Nad vastavad igasugustele taotlustele asjakohaste vastuste vormis. Servlet-põhipakett määratleb Java-objektid servlet-päringute ja vastuste esitamiseks. Java Serveri lehekülgedelt (JSP) saab JavaServer Pages'i kompilaatori abil servletid automaatselt genereerida. Tehniliselt võib "servlet" määratleda Java-klassi Java EE-s, mis vastab Java Servlet API-le.
Servletid on kliendi-serveri protokolli kaudu suhtlejad ja neid kasutatakse kõige sagedamini HTTP-protokolli puhul. Nende põhieesmärgid on:
- HTML-vormi andmete töötlemiseks või salvestamiseks ja esitamiseks.
- Dünaamilise sisu, näiteks andmebaasi päringu tulemuste andmiseks.
- Halda olekuteavet, mida kodakondsuseta HTTP-protokollis ei ole, näiteks artiklite täitmist vastava kliendi ostukorvis.
Servlet töötab servlet-elutsüklis, põhiliselt on kolm servlet-meetodit, mis määravad servlet-elutsükli:
- selles(),
- teenus () ja
- hävitama ()
JSP ja Servlet'i võrdlus:
JSP | Servlet | |
Mis need on | JSP on veebilehe skriptikeel, mida tavaliselt kasutatakse dünaamilise veebisisu loomiseks. | Servletid on juba koostatud Java-programmid, mis loovad ka dünaamilise veebisisu. |
Tavaliselt | JSP on enamasti orienteeritud teabe kuvamisele. | Servlet on rohkem orienteeritud informatsiooni töötlemisele. |
Roll MVC-s (mudelivaate kontroller) | JSP toimib vaatajana. | Servlet toimib kontrollerina. |
Kohaldatav ajal, mil. \ T | Need on üldiselt eelistatud, kui nõutavaid andmeid ei töödelda palju. | Need on üldiselt eelistatumad, kui tegemist on rohkem töötlemise ja manipuleerimisega. |
Jooksev kiirus | JSP töötab Servletiga võrreldes aeglasemalt. JSP koostab Java Servlets'i. | Servletid töötavad kiiremini kui JSP. |
Koodide tüsistused | Koodide programmeerimine on Servlets'iga võrreldes lihtne. | Koodide programmeerimine on keeruline võrreldes JSP-ga. |
Rahastu | Siin saame ehitada kohandatud sildid, mis võivad otseselt nimetada Java-oad. | Selliseid seadmeid servletides ei ole. |
Koosneb | JSP on Java HTML-esitus, mis on segatud JAVA-skriptidega. | Servlet on täisfunktsionaalsed Java-koodid. |
Objektide järjepidevus | JSP-l on kaudsed objektid. | Servletidel ei ole sellist tüüpi objekte. |
Näited | Aruande kuvamiseks. | Kasutaja esitatud vormi töötlemiseks. |