fbpx
Wikipedia

Java Servlet

Un servlet es una clase en el lenguaje de programación Java, utilizada para ampliar las capacidades de un servidor. Aunque los servlets pueden responder a cualquier tipo de solicitudes, estos son utilizados comúnmente para extender las aplicaciones alojadas por servidores web, de tal manera que pueden ser vistos como applets de Java que se ejecutan en servidores en vez de navegadores web. Este tipo de servlets son la contraparte Java de otras tecnologías de contenido dinámico Web, como PHP y ASP.NET.

Java Servlet
Componente de Java EE
Información general
Autor Sun Microsystems
Desarrollador Oracle Corporation / Sun Microsystems
Licencia Propietaria (gratuito para uso no comercial)
Información técnica
Programado en Java
Plataformas admitidas Java EE
Versiones
Última versión estable 3.1 (info) 28 de mayo de 2013
Enlaces
Sitio web oficial
Repositorio de código

La palabra servlet deriva de otra anterior, applet, que se refiere a pequeños programas que se ejecutan en el contexto de un navegador web.

El uso más común de los servlets es generar páginas web de forma dinámica a partir de los parámetros de la petición que envíe el navegador web.

Historia

La especificación original de servlets fue creada por Sun Microsystems (la versión 1.0 fue terminada en junio de 1997). Comenzando con la versión 2.3, la especificación de servlet fue desarrollada siguiendo el Proceso de la Comunidad Java (Java Community Process).

Ciclo de vida

1. Inicializar el servlet

Cuando un servidor carga un servlet, ejecuta el método init del servlet. El proceso de inicialización debe completarse antes de poder manejar peticiones de los clientes, y antes de que el servlet sea destruido.

Aunque muchos servlets se ejecutan en servidores multi-thread, los servlets no tienen problemas de concurrencia durante su inicialización. El servidor llama sólo una vez al método init al crear la instancia del servlet, y no lo llamará de nuevo a menos que vuelva a recargar el servlet. El servidor no puede recargar un servlet sin primero haber destruido el servlet llamando al método destroy.

2. Interactuar con los clientes

Después de la inicialización, el servlet puede dar servicio a las peticiones de los clientes. Estas peticiones serán atendidas por la misma instancia del servlet, por lo que hay que tener cuidado al acceder a variables compartidas, ya que podrían darse problemas de sincronización entre requerimientos simultáneos.

3. Destruir el servlet

Los servlets se ejecutan hasta que el servidor los destruye, por cierre del servidor o bien a petición del administrador del sistema. Cuando un servidor destruye un servlet, ejecuta el método destroy del propio servlet. Este método sólo se ejecuta una vez y puede ser llamado cuando aún queden respuestas en proceso, por lo que hay que tener la atención de esperarlas. El servidor no ejecutará de nuevo el servlet hasta haberlo cargado e inicializado de nuevo.

Clases y objetos necesarios

Un Servlet se crea con el paquete javax.servlet.

Interface HttpServletRequest

Este enlace para ver contiene la definición detallada (en inglés): [1]

Interface HttpServletResponse

Este enlace contiene la especificación detallada (en inglés): [2]

Beneficios de utilizar Servlets en lugar de CGI

  • Son más eficientes y utilizan menos recursos. CGI utiliza un nuevo proceso por cada petición. En cambio en los Servlets solo existe una copia cargada en la máquina virtual y por cada petición se inicia un hilo, lo cual reduce el uso de memoria del servidor y el tiempo de respuesta.
  • Tienen persistencia, por lo que siguen activos una vez terminada la petición.

Ejemplo

Código de un Servlet que procesa una petición GET y devuelve una página web HTML sencilla:

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>"); } } 

Véase también

Enlaces externos

  • Referencia oficial para Java Servlet de Sun Microsystem
  • Especificación JSR 154 de Java Servlet
  •   Datos: Q375673

java, servlet, este, artículo, sección, necesita, wikificado, favor, edítalo, para, cumpla, convenciones, estilo, este, aviso, puesto, marzo, 2018, este, artículo, sección, necesita, referencias, aparezcan, publicación, acreditada, este, aviso, puesto, marzo, . Este articulo o seccion necesita ser wikificado por favor editalo para que cumpla con las convenciones de estilo Este aviso fue puesto el 15 de marzo de 2018 Este articulo o seccion necesita referencias que aparezcan en una publicacion acreditada Este aviso fue puesto el 15 de marzo de 2018 Un servlet es una clase en el lenguaje de programacion Java utilizada para ampliar las capacidades de un servidor Aunque los servlets pueden responder a cualquier tipo de solicitudes estos son utilizados comunmente para extender las aplicaciones alojadas por servidores web de tal manera que pueden ser vistos como applets de Java que se ejecutan en servidores en vez de navegadores web Este tipo de servlets son la contraparte Java de otras tecnologias de contenido dinamico Web como PHP y ASP NET Java ServletComponente de Java EEInformacion generalAutorSun MicrosystemsDesarrolladorOracle Corporation Sun MicrosystemsLicenciaPropietaria gratuito para uso no comercial Informacion tecnicaProgramado enJavaPlataformas admitidasJava EEVersionesUltima version estable3 1 info 28 de mayo de 2013EnlacesSitio web oficial Repositorio de codigo editar datos en Wikidata La palabra servlet deriva de otra anterior applet que se refiere a pequenos programas que se ejecutan en el contexto de un navegador web El uso mas comun de los servlets es generar paginas web de forma dinamica a partir de los parametros de la peticion que envie el navegador web Indice 1 Historia 2 Ciclo de vida 3 Clases y objetos necesarios 3 1 Interface HttpServletRequest 3 2 Interface HttpServletResponse 4 Beneficios de utilizar Servlets en lugar de CGI 5 Ejemplo 6 Vease tambien 7 Enlaces externosHistoria EditarLa especificacion original de servlets fue creada por Sun Microsystems la version 1 0 fue terminada en junio de 1997 Comenzando con la version 2 3 la especificacion de servlet fue desarrollada siguiendo el Proceso de la Comunidad Java Java Community Process Ciclo de vida Editar1 Inicializar el servletCuando un servidor carga un servlet ejecuta el metodo init del servlet El proceso de inicializacion debe completarse antes de poder manejar peticiones de los clientes y antes de que el servlet sea destruido Aunque muchos servlets se ejecutan en servidores multi thread los servlets no tienen problemas de concurrencia durante su inicializacion El servidor llama solo una vez al metodo init al crear la instancia del servlet y no lo llamara de nuevo a menos que vuelva a recargar el servlet El servidor no puede recargar un servlet sin primero haber destruido el servlet llamando al metodo destroy 2 Interactuar con los clientesDespues de la inicializacion el servlet puede dar servicio a las peticiones de los clientes Estas peticiones seran atendidas por la misma instancia del servlet por lo que hay que tener cuidado al acceder a variables compartidas ya que podrian darse problemas de sincronizacion entre requerimientos simultaneos 3 Destruir el servletLos servlets se ejecutan hasta que el servidor los destruye por cierre del servidor o bien a peticion del administrador del sistema Cuando un servidor destruye un servlet ejecuta el metodo destroy del propio servlet Este metodo solo se ejecuta una vez y puede ser llamado cuando aun queden respuestas en proceso por lo que hay que tener la atencion de esperarlas El servidor no ejecutara de nuevo el servlet hasta haberlo cargado e inicializado de nuevo Clases y objetos necesarios EditarUn Servlet se crea con el paquete javax servlet Interface HttpServletRequest Editar Este enlace para ver contiene la definicion detallada en ingles 1 Interface HttpServletResponse Editar Este enlace contiene la especificacion detallada en ingles 2 Beneficios de utilizar Servlets en lugar de CGI EditarSon mas eficientes y utilizan menos recursos CGI utiliza un nuevo proceso por cada peticion En cambio en los Servlets solo existe una copia cargada en la maquina virtual y por cada peticion se inicia un hilo lo cual reduce el uso de memoria del servidor y el tiempo de respuesta Tienen persistencia por lo que siguen activos una vez terminada la peticion Ejemplo EditarCodigo de un Servlet que procesa una peticion GET y devuelve una pagina web HTML sencilla 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 peticion 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 lt DOCTYPE HTML PUBLIC W3C DTD HTML 4 0 Transitional EN gt out println lt html gt out println lt head gt lt title gt Ejemplo HolaSextoInformatica lt title gt lt head gt out println lt body gt out println lt h1 gt Hola HolaSextoInformatica lt h1 gt out println lt body gt lt html gt Vease tambien EditarJava lenguaje de programacion Servidor JSPEnlaces externos EditarReferencia oficial para Java Servlet de Sun Microsystem Especificacion JSR 154 de Java Servlet Ejemplos y explicaciones de Servlets y JSPs Datos Q375673Obtenido de https es wikipedia org w index php title Java Servlet amp oldid 130748486, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos