介绍
这篇文章将为大家详细讲解有关Servlet请求重定向如何在Java中实现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
HttpServletResponse接口的sendRedirect()方法可用于将响应重定向到另一个资源,它可以是Servlet、Jsp或Html文件。
它接受相对和绝对URL。
它在客户端起作用,因为它使用浏览器的网址栏发出另一个请求。因此,它可以在服务器内部和外部工作。
<强> 1转发和重定向的区别强>
RequestDispatcher的向前()方法与HttpServletResponse接口的sendRedirect()方法之间有很多区别。具体区别如下:
向前()方法sendRedirect()方法向前()方法在服务器端起作用.sendRedirect()方法在客户端运行。只有1个请求。转发到另一个Servlet的请求和原来请求是同一个。每次重定向都有2个请求。重定向到另一个Servlet的请求是由浏览器重新发出的新请求。只能转发到当前服务器内部的资源。重定向可以请求当前服务器内部的资源或者外部服务器资源。示例:request.getRequestDispacher (“servlet2") forward格式(请求、响应);示例:response.sendRedirect (“servlet2");<强> 2重定向的示例强>
在下面示例中,我们将请求重定向到百度。注意sendRedirect方法在客户端工作,这就是为什么我们可以将请求发送到任何地方的原因。我们可以在服务器内外发送请求。
进口. io . *; 进口javax.servlet。*; 进口javax.servlet.http。*; 公开课DemoServlet扩展HttpServlet { 公共空doGet (HttpServletRequest点播,HttpServletResponse res) 抛出ServletException, IOException { res.setContentType (“text/html; charset=utf-8"); PrintWriter pw=res.getWriter (); res.sendRedirect (“http://www.baidu.com"); pw.close (); } }
<强> 3重定向创建自定义百度搜索
强>
在下面示例中,我们使用sendRedirect方法将请求与请求数据一起发送到百度服务器。
<强> 3.1编写搜索表单强>
& lt; % @页面contentType=皌ext/html; charset=UTF-8"语言=癹ava"%比; & lt; html> & lt; head> & lt;元charset=癠TF-8"祝辞 & lt; title>一点教程网——请求重定向案例& lt;/title> & lt;元http-equiv=癱ontent-type"内容=拔谋?html"charset=癠TF-8"比; & lt;/head> & lt; body> action=& lt;形式“search"祝辞 & lt;输入类型=皌ext"name=皀ame"比; & lt;输入类型=皊ubmit"值=https://www.yisu.com/zixun/卑俣人阉?> 形式 身体>