Servlet - Tensho97/Aprende-a-Aprender GitHub Wiki

Un servlet es una clase escrita en Java, que se utiliza para ampliar las capacidades de un servidor. Puede responder a cualquier tipo de solicitudes, pero es utilizado comúnmente para extender las aplicaciones alojadas en servidores web. El uso más común de los servlets es generar páginas web de forma dinámica, partiendo de los parámetros de la petición que envíe el navegador web.

Otra forma de hacer páginas web dinámicas es con la llamada "Interfaz de entrada común (CGI)", que permite al navegador web solicitar datos del programa ejecutado en un servidor web.

El beneficio de usar Servlets en lugar de CGI es que éstos son más eficientes y utilizan menos recursos. Mientras que la interfaz usa un nuevo proceso para cada petición, el servlet crea una copia que se carga en la máquina virtual y por cada petición se inicia un hilo. Esto reduce el uso de memoria del servidor y el tiempo que tarde en responder. Un servlet también seguirá activo una vez que termine la petición.

Ejemplo de un servlet que procesa una petición y te devuelve una página web HTML

package org.pruebas;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HolaSextoInformaticaServlet extends HttpServlet {

    /**
     * Servlet de ejemplo que procesa una petición GET
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException 
     */
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">");
        out.println("<html>");
        out.println("<head><title>Ejemplo HolaSextoInformatica</title></head>");
        out.println("<body>");
        out.println("<h1>¡Hola HolaSextoInformatica!</h1>");
        out.println("</body></html>");
    }
}


Autor: Julián

⚠️ **GitHub.com Fallback** ⚠️