Verschil tussen JSP en Servlets

Anonim

JSP versus Servlets

A Servlet is een software-component voor serversoftware die in Java is geschreven en wordt uitgevoerd in een compatibele containeromgeving, bekend als een Servetbak (zoals Apache Tomcat). Servlets worden voornamelijk gebruikt bij het implementeren van webapplicaties die dynamische webpagina's genereren. Ze kunnen echter elk ander inhoudstype, zoals XML, tekst, afbeeldingen, geluidsfragmenten, PDF, Excel-bestanden programmatisch genereren.

Een Servlet die geschreven is om HTML te genereren, kan er als volgt uitzien:

Openbare klasse MyServlet extends HttpServlet {

beschermde void doGet (HttpServletRequest request, HttpServletResponse response) werpt ServletException, IOException { PrintWriter w = reactie. getWriter ();

w. schrijven("");

w. schrijven("");

Datum d = Nieuw Datum ();

w. schrijf (d. toString ());

w. schrijven("");

w. schrijven("");

}

}

De bovenstaande code bevat een mix van HTML en Java broncode. Dit is niet erg leesbaar en onderhouden. JSP die staat voor JavaServer Pages, biedt een beter alternatief. Bijvoorbeeld, het volgende is een fragment van JSP-code die dezelfde output geeft:

Webpagina auteurs vinden JSP gemakkelijker te schrijven en te onderhouden. JSP-bestanden worden echter vertaald in Servlets door een Servlet-container op het moment dat JSP-bestanden eerst worden geopend. Zakelijke logica-schrijvers vinden Servlets echter makkelijker om mee te werken.

Een verzoek ontvangen door een webapplicatie moet de uitvoering van een aantal bedrijfslogica veroorzaken en vervolgens een resulterende webpagina genereren als antwoord. In de hedendaagse webapplicaties wordt het beheer van de totale verwerkingscyclus voor de verwerking meestal door Servlets overhandigd. Als de laatste stap in het verwerken van een verzoek, overhandigt een dergelijke Servlet doorgaans de verantwoordelijkheid om de dynamische HTML te genereren naar een JSP.