sendRedirect() o Método em Servlet

sendRedirect() método redireciona a resposta para outro recurso. Esse método realmente faz com que o cliente(navegador) crie uma nova solicitação para chegar ao recurso. O cliente pode ver o novo url no navegador.

sendRedirect () aceita URL relativa, para que ele possa ir para recursos dentro ou fora do servidor.

Servlet: sendRedirect() e Request Dispatcher

A principal diferença entre um redirecionamento e uma solicitação de despacho é que, redirecionamento faz com que o cliente(navegador) criar uma nova solicitação para obter o recurso, o usuário pode ver o novo URL, enquanto o pedido de expedição de receber o recurso na mesma solicitação e URL não muda.

além disso, outra diferença muito importante é que, sendRedirect() funciona no objeto de resposta enquanto o envio de solicitação funciona no objeto de solicitação.

Exemplo que demonstra o uso de sendRedirect()

import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class MyServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); try { response.sendRedirect("https://www.studytonight.com"); } finally { out.close(); } }}

Diferença entre forward() e sendRedirect()

forward() sendRedirect()
Ele funciona no lado do servidor. funciona no lado do cliente.
ele sempre envia o mesmo objeto de solicitação e resposta. ele sempre envia uma nova solicitação para o objeto.
ele só funciona dentro do servidor. ele funciona dentro e fora do servidor.
nesse método, todo o processamento é tratado internamente pelo contêiner da web. neste método, todo o processamento é tratado por outro servlet.
é mais rápido. é mais lento.
usando forward () endereço do método pode ser visto na barra de endereços. usando forward () endereço do método não pode ser visto na barra de endereços.
a interface RequestDispatcher é usada para declaração. HttpServletResponse é usado para declaração.
é muito útil no padrão de design MVC para ocultar o acesso direto. não é útil no padrão de design MVC ocultar o acesso direto.
ele reutiliza o objeto. não reutiliza o objeto.
exemplo: solicitação.getRequestDispacher (“servlet_1”).forward (request response); exemplo: resposta.sendRedirect(“Servlet_1”);

Deixe uma resposta

O seu endereço de email não será publicado.