JSP vs Servlets
Un Servlet este o componentă software de pe server scrisă în Java și rulează într-un mediu compatibil cu containerele cunoscut sub numele de container Servelt (ca Apache Tomcat). Servlet-urile sunt utilizate în principal pentru implementarea aplicațiilor web care generează pagini web dinamice. Cu toate acestea, pot genera orice alt tip de conținut, cum ar fi XML, text, imagini, clipuri audio, PDF, fișiere Excel programat.
Un servlet scris pentru generarea unor HTML poate arăta astfel:
clasa publica MyServlet extinde HttpServlet
protejat void protejat (cerere HttpServletRequest, răspuns HttpServletResponse) aruncă ServletException, IOException
PrintWriter w = răspuns.getWriter ();
w.write ( „“);
w.write ( „“);
Data d = data nouă ();
w.write (d.toString ());
w.write ( „“);
w.write ( „“);
Codul de mai sus conține un amestec de cod sursă HTML și Java. Acest lucru nu este foarte lizibil și poate fi întreținut. JSP, care reprezintă paginile JavaServer, oferă o alternativă mai bună. De exemplu, următorul text este un fragment al codului JSP care generează rezultate identice:
Autorii paginilor web găsesc JSP mai ușor de scris și de întreținut. Fișierele JSP sunt totuși traduse în servlets de către un container Servlet la momentul accesării primelor fișiere JSP. Cu toate acestea, scriitorii de logica de afaceri găsesc Servlets pentru a fi mai ușor de utilizat.
O solicitare primită de o aplicație web ar trebui să declanșeze executarea unei anumite logici de afaceri și apoi să genereze o pagină web rezultantă ca răspuns. În aplicațiile web moderne, controlul ciclului de procesare a solicitărilor este în cea mai mare parte transmis de Servlet. Ca ultimă etapă în procesarea unei solicitări, un astfel de servlet deține, în general, responsabilitatea de a genera HTML dinamic într-un JSP.