Ciclo de vida del servlet

Este tutorial le brinda una comprensión de los Servlets de Java y su ciclo de vida. Antes de comenzar con el Ciclo de vida del Servlet, permítanos obtener una idea de qué es exactamente un Servlet y su proceso.

¿Qué es un servlet?

Java Servlet es una clase en lenguaje de programación Java que se define en Java Enterprise Edition, también conocida como Java EE. Fue desarrollado por Sun Microsystems en el año 1997. Después de la primera versión 1.0 de Servlet, lanzada en el año 1997, se lanzaron muchas versiones nuevas, la última es Servlet 4.0.

La tecnología Servlet es muy útil para crear aplicaciones web, ya que genera páginas web dinámicas mientras reside en el lado del servidor. Los servlets de Java reemplazaron CGI o Common Gateway Interface, que era un lenguaje de script que se usaba comúnmente como lenguaje de programación del lado del servidor.

Servlet es independiente de la plataforma, robusto y puede acceder a todas las API de Java, como la API JDBC (Java Database Connectivity) para acceder a las bases de datos de cualquier empresa.

Java Servlet se utiliza para crear aplicaciones web de naturaleza dinámica. Para hacerlo, amplía la capacidad del servidor. Es capaz de ejecutarse en cualquier servidor web que tenga un contenedor de Servlet integrado.

El proceso de Java Servlet se puede entender fácilmente a partir de los pasos mencionados a continuación:

  1. El cliente envía una solicitud a un contenedor de servlet. El cliente aquí se refiere a cualquier navegador como Chrome, IE, Mozilla, etc. en uso.
  2. El contenedor o el servidor web busca el servlet. Tan pronto como el servidor encuentra el servlet, lo inicia.
  3. Ahora, el servlet procesa la solicitud del cliente y luego se envía una respuesta al servidor.
  4. Esta respuesta es enviada al cliente por el servidor.

Antes de pasar al ciclo de vida de un servlet, debe ser claro con las terminologías utilizadas hasta ahora en este artículo. Esto será útil al comprender el ciclo de vida del servlet.

  1. Servidor web : el servidor web o el servidor HTTP maneja las solicitudes HTTP y las respuestas HTTP. Las solicitudes enviadas por los clientes se manejan y se envía una respuesta basada en la solicitud realizada por este servidor.
  2. Web Container : Web Container o Servlet Container o Servlet Engine interactúa con los Servlets. Es un componente importante de un servidor web, ya que gestiona el ciclo de vida de un servlet.

Ciclo de vida del servlet

Puede entender el ciclo de vida de un Servlet como una secuencia de pasos que experimenta un servlet en su lapso de vida, comenzando desde su iniciación hasta ser destruido. Servlet Engine gestiona el ciclo de vida del servlet como se dijo anteriormente.

El ciclo de vida de un servlet se puede resumir en los siguientes cinco puntos:

  1. La clase Servlet está cargada.
  2. Se crea la instancia de Servlet
  3. Se invoca el método init () para inicializar el servlet.
  4. El método service () se invoca repetidamente para cada solicitud de cliente realizada.
  5. El servlet se destruye usando el método destroy ().

Nota: Los objetos también se llaman instancias.

1) Carga de la clase Servlet

La clase de servlet se carga con la ayuda de classloader. Tan pronto como el contenedor web recibe la solicitud de un servlet, se carga la clase de servlet.

2) Crear una instancia de clase de servlet

El contenedor web crea una instancia del servlet tan pronto como se carga la clase de servlet. Tenga en cuenta que la creación de una instancia de servlet es una vez en un proceso de por vida para cada servlet, lo que significa que se instanciará solo una vez en el ciclo de vida del servlet.

3) Invocación del método Init ()

Después de crear la instancia de servlet, la tarea del contenedor web es invocar el método init (). El método init () se invoca solo una vez e inicializa el servlet. Si un usuario invoca un servlet, solo se creará una instancia de este servlet. Cada solicitud resulta en una generación de un nuevo hilo. Los datos creados o cargados invocando el método init () permanecen durante toda la vida del servlet.

Tenga en cuenta que el método init () se llamará solo una vez durante toda la vida útil del servlet.

La sintaxis dada a continuación invocará el método init:

public void init () arroja ServletException

(

/ / Código

)

4) Invocación del método Service ()

El método Service () es un método importante que se llamará cada vez que se reciba una solicitud para el servlet. El contenedor web es el componente que llamará al método service () para realizar un trabajo real, es decir, para recibir solicitudes enviadas por el navegador del cliente y manejarlo enviando una respuesta adecuada al cliente. A medida que se inicializa el servlet, se invoca el método de servicio y se analizan todos los tipos de solicitud HTTP, como GET, POST, PUT, DELETE, etc. Una vez que se conocen los tipos de solicitud, el método service () enviará la solicitud a su controlador método basado en eso.

Considere el caso de una solicitud POST realizada por el cliente. El trabajo del método service () es llamar al método doPost () y enviarle la solicitud. Todas las solicitudes tienen su propio método de controlador al que se realizará una llamada mediante el método service () en función del tipo de solicitud realizada. Por ejemplo, para obtener una excepción hay un método de controlador doGet (), para Put, hay un método doPut () y así sucesivamente.

Tenga en cuenta que el método service () se invoca cada vez que se produce una solicitud del cliente. Esto significa que, a diferencia del método init () y destroy (), el método service () puede invocarse innumerables veces durante el ciclo de vida del servlet.

La sintaxis que encontrará a continuación invocará el método service () para Servlet:

El servicio público nulo (solicitud de solicitud de servicio, respuesta de respuesta de servicio) arroja IOException, ServletException

(

//código

)

5) Invocar un método Destroy ()

En caso de apagar el servidor web, el servlet tiene la oportunidad de descargar todos los servlets creados. El método destroy () eliminará todos los servlets inicializados, limpiando así la memoria.

La sintaxis para ello es:

vacío público destruir ()

Artículos recomendados

Esta ha sido una guía para el ciclo de vida del servlet. Aquí hemos discutido los pasos en secuencia por los que se somete un servlet en su lapso de vida, comenzando desde su iniciación hasta ser destruido. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Preguntas de la entrevista de Java Servlet
  2. Preguntas de la entrevista del servlet
  3. ¿Qué es la seguridad cibernética?
  4. ¿Qué es el servidor SQL?