Forskellen mellem JSP og Servlets

JSP vs Servlets

En Servlet er en softwarekomponent på serversiden, der er skrevet i Java og kører i et kompatibelt containermiljø kendt som en Servelt-container (som Apache Tomcat). Servlets bruges overvejende til implementering af webapplikationer, der genererer dynamiske websider. De kan dog generere enhver anden indholdstype som XML, tekst, billeder, lydklip, PDF, Excel-filer programmatisk.

En Servlet skrevet til generering af HTML kan se sådan ud:

offentlig klasse MyServlet udvider HttpServlet
beskyttet tomrum doGet (HttpServletRequest-anmodning, HttpServletResponse-svar) kaster ServletException, IOException

PrintWriter w = response.getWriter ();
w.write ( ””);
w.write ( ””);

Dato d = ny dato ();
w.write (d.toString ());
w.write ( ””);
w.write ( ””);

Koden ovenfor indeholder en blanding af HTML og Java-kildekode. Sådan er ikke særlig læsbar og vedligeholdelig. JSP, der står for JavaServer Pages, giver et bedre alternativ. For eksempel er følgende et fragment af JSP-kode, der resulterer i identisk output:






Websideforfattere finder JSP lettere at skrive og vedligeholde. JSP-filer oversættes dog til Servlets af en Servlet-container på det tidspunkt, hvor JSP-filer først åbnes. Forfattere til forretningslogik synes imidlertid, at Servlets er lettere at arbejde med.

En anmodning modtaget af en webapplikation skal udløse udførelsen af ​​en vis forretningslogik og derefter generere en resulterende webside som svar. I moderne webapplikationer leveres kontrol af den samlede behandlingscyklus for forespørgsler for det meste af Servlets. Som det sidste trin i behandlingen af ​​en anmodning overleverer en sådan Servlet generelt ansvaret for at generere den dynamiske HTML til en JSP.