Clase HttpServlet en Java

HttpServelt es una clase abstracta, viene en el paquete ‘ javax.servlet.http.HttpServlet ‘. Para crear un servlet, la clase debe extender la clase HttpServlet y anular al menos uno de sus métodos (doGet, doPost, doDelete, doPut). La clase HttpServlet amplía la clase GenericServlet e implementa una interfaz Serializable. 

Constructor de la clase HttpServlet

HttpServlet()

Esta es una clase abstracta, por lo que el constructor no hace nada.

Métodos de la clase HttpServlet

1. Método doGet()

  • Este método se usa para manejar la solicitud GET en el lado del servidor.
  • Este método también es compatible automáticamente con HTTP HEAD (la solicitud HEAD es una solicitud GET que no devuelve nadie como respuesta).
  • La solicitud de tipo GET generalmente se usa para preprocesar una solicitud.

Modificador y Tipo:  vacío protegido

Sintaxis:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud GET.
  • ServletException: se usa para manejar la solicitud GET.

2. Método doPost()

  • Este método se usa para manejar la solicitud POST en el lado del servidor.
  • Este método permite al cliente enviar datos de longitud ilimitada al servidor web a la vez.
  • La solicitud de tipo POST se suele utilizar para posprocesar una solicitud.

Modificador y Tipo:  vacío protegido

Sintaxis:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetro:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Lanza:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud POST.
  • ServletException: se usa para manejar la solicitud POST.

3. Método doHead()

  • Este método se reemplaza para manejar la solicitud HEAD.
  • En este método, la respuesta contiene el único encabezado pero no contiene el cuerpo del mensaje.
  • Este método se utiliza para mejorar el rendimiento (evitar el cuerpo de respuesta computacional).

Modificador y Tipo: vacío protegido 

Sintaxis:

protected void doHead(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud HEAD.
  • ServletException: se usa para manejar la solicitud HEAD.

4. Método doPut()

  • Este método se reemplaza para manejar la solicitud PUT.
  • Este método permite al cliente almacenar la información en el servidor (para guardar el archivo de imagen en el servidor).
  • El servidor llama a este método (a través del método de servicio) para manejar una solicitud PUT.

Modificador y Tipo:  vacío protegido

Sintaxis:

protected void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Lanza:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud PUT.
  • ServletException: se usa para manejar la solicitud PUT.

5. Método doDelete()

  • Este método se reemplaza para manejar la solicitud DELETE.
  • Este método permite que un cliente elimine un documento o una página web del servidor.
  • Al usar este método, puede ser útil guardar una copia de la URL afectada en un almacenamiento temporal para evitar la pérdida de datos.

Modificador y Tipo:  vacío protegido 

Sintaxis:

protected void doDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud DELETE.
  • ServletException: se usa para manejar la solicitud DELETE.

6. Método doOptions()

  • Este método se reemplaza para manejar la solicitud de OPCIONES.
  • Este método se usa para determinar qué métodos HTTP admite el servidor y devuelve un encabezado apropiado.

Modificador y Tipo: vacío protegido 

Sintaxis:

protected void doOptions(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud de OPCIONES.
  • ServletException: se usa para manejar la solicitud de OPCIONES.

7. Método doTrace()

  • Este método se anula para manejar la solicitud TRACE.
  • Este método devuelve los encabezados enviados con la solicitud TRACE al cliente para que puedan usarse en la depuración.

Modificador y Tipo:  vacío protegido

Sintaxis:

protected void doTrace(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud TRACE.
  • ServletException: se usa para manejar la solicitud TRACE.

8. Método getLastModified()

  • Este método devuelve la hora en que se modificó por última vez el objeto HttpServletRequest.
  • Si se desconoce el tiempo, el método devolverá un número negativo.
  • Este método hace que las cachés del navegador y del proxy funcionen de manera más efectiva.
  • reduciendo también la carga en los recursos del servidor y de la red.

Modificador y Tipo: protegido largo

Sintaxis:

protected long getLastModified(HttpServletRequest request)

Parámetro: solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.

9. Método de servicio()

Este método recibe requests HTTP estándar del método de servicio público y las envía a los métodos doXXX definidos en esta clase.

Modificador y Tipo: vacío protegido

Sintaxis:

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud HTTP.
  • ServletException: se usa para manejar la solicitud HTTP.

10. Método de servicio()

Este método se utiliza para enviar requests de clientes al método de servicio protegido.

Modificador y Tipo: public void

Sintaxis:

public void service(ServletRequest reqequest,ServletResponse response) throws ServletException,IOException

Parámetros:

  • solicitud: un objeto HttpServletRequest que contiene la solicitud que el cliente ha realizado del servlet.
  • respuesta: un objeto HttpServletResponse que contiene la respuesta que el servlet envía al cliente.

Excepciones:

  • IOException: si se detecta un error de entrada o salida cuando el servlet maneja la solicitud HTTP.
  • ServletException: se usa para manejar la solicitud HTTP.

Ejemplo:

Java

package com.gfg;
import javax.servlet.*;
import javax.servlet.http.*;
  
// here GFGServlet class inherit HttpServlet
public class GFGServlet extends HttpServlet {
    
    // we are defining the doGet method of HttpServlet
    // abstract class
    public void doGet(HttpServletRequest rq,
                      HttpServletResponse rs)
    {
        // here user write code to handle doGet request
    }
  
    // we are defining the doPost method of HttpServlet
    // abstract class
    public void doPost(HttpServletRequest rq,
                       HttpServletResponse rs)
    {
        // here user write code to handle doPost request
    }
  
} // class ends

Nota: Este es un código del lado del servidor, es solo para aclarar cómo usar la clase HttpServlet.

Publicación traducida automáticamente

Artículo escrito por sharmaharsh_05 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *