Download Ejemplos de Servlet y JSP
Document related concepts
no text concepts found
Transcript
Ejemplos de Servlet y JSP Web Application Development HERNÁNDEZ CRUZ DULCE 13/09/2011 INTRODUCCIÓN Servlets Los Servlets son módulos que extienden los servidores orientados a petición-respuesta, como los servidores web compatibles con Java. Por ejemplo, un servlet podría ser responsable de tomar los datos de un formulario de entrada de pedidos en HTML y aplicarle la lógica de negocios utilizada para actualizar la base de datos de pedidos de la compañia. Los Servlets son para los servidores lo que los applets son para los navegadores. Sin embargo, al contrario que los applets, los servlets no tienen interface gráfico de usuario. Los servelts pueden ser incluidos en muchos servidores diferentes porque el API Servlet, el que se utiliza para escribir Servlets, no asume nada sobre el entorno o protocolo del servidor. Usos de servlets Permitir la colaboración entre la gente. Un servlet puede manejar múltiples peticiones concurrentes, y puede sincronizarlas. Esto permite a los servlets soportar sistemas como conferencias on-line Reenviar peticiones. Los Servlets pueden reenviar peticiones a otros servidores y servlets. Con esto los servlets pueden ser utilizados para cargar balances desde varios servidores que reflejan el mismo contenido, y para particionar un único servicio lógico en varios servidores, de acuerdo con los tipos de tareas o la organización compartida. JSP JSP es un acrónimo de Java Server Pages, que en castellano vendría a decir algo como Páginas de Servidor Java. Es, pues, una tecnología orientada a crear páginas web con programación en Java. Con JSP podemos crear aplicaciones web que se ejecuten en variados servidores web, de múltiples plataformas, ya que Java es en esencia un lenguaje multiplataforma. Las páginas JSP están compuestas de código HTML/XML mezclado con etiquetas especiales para programar scripts de servidor en sintaxis Java. Por tanto, las JSP podremos escribirlas con nuestro editor HTML/XML habitual. Ejecución del ejemplo de Servlet “HolaMundo” Se ejecutó el siguiente Hola Mundo utilizando servlets. import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HolaMundo extends HttpServlet{ protected void procesarPeticion(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException{ res.setContentType("text/html"); PrintWriter out = res.getWriter(); out.println("<html>"); out.println("<head>"); out.println("<title>Servlet HolaMundo</title>"); out.println("</head>"); out.println("<body>"); out.println("<h1>Hola Mundo</h1>"); out.println("</body>"); out.println("</html>"); out.close(); } protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { procesarPeticion(req,res); } protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { procesarPeticion(req,res); } public String getServletInfo(){ return "Servlet HolaMundo"; } } Se inicia el servidor de Tomcat para poder ejecutar el servlet, en el navegador se coloca la dirección: http://localhost:8080/pruebas/HolaMundo JSP En este programa, se imprime 5 veces “Hola ESCOM”, en este caso solo se escribe en el navegador la dirección donde se encuentra el archivo .JSP, seguido de su nombre: http://localhost:8080/Hola.jsp <%-- Programa básico JSP --%> <html> <body> <%! int veces = 5; %> <% for(int i = 0; i < veces; i++) out.println("Hola ESCOM!<br/>"); %> <%-- Este es un comentario --%> <%= "IPN" %> </body> </html> Las etiquetas anteriores se pueden cambiar por las siguientes, y el programa muestra el mismo resultado: <html> <body> <jsp:declaration>int veces=5;</jsp:declaration> <jsp:scriptlet>for(int i=0;i<veces;i++) out.println("Hola ESCOM!!");</jsp:scriptlet> <%-- Este es un comentario --%> <jsp:expression>IPN</jsp:expression> </body> </html> Applet y JSP En el siguiente ejemplo se ejecutó el archivo de Hola.jsp incluyendo un applet, esto se logra con la etiqueta <jsp:plugin type="applet" code="Examen.class" width="700" height="600"/> <%-- Programa básico JSP --%> <html> <body> <%! int veces = 5; %> <% for(int i = 0; i < veces; i++) out.println("Hola ESCOM!<br/>"); %> <%-- Este es un comentario --%> <%= "IPN" %> <jsp:plugin type="applet" code="Examen.class" width="700" height="600"/> </body> </html>