200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > JavaWeb请求的重定向与转发:getRequestDispatcher()的forward方法 sendRedirect方法

JavaWeb请求的重定向与转发:getRequestDispatcher()的forward方法 sendRedirect方法

时间:2020-07-08 12:40:57

相关推荐

JavaWeb请求的重定向与转发:getRequestDispatcher()的forward方法 sendRedirect方法

请求的重定向与请求转发

RequestDispatcher接口RequestDispatcher接口的理论知识用forward方法实现请求转发用sendRedirect方法实现请求重定向forward()方法和sendRedirect方法的区别

RequestDispatcher接口

RequestDispatcher接口的理论知识

RequestDispatcher实例对象是由Servlet引擎创建的,它用于包装一个要被其他资源调用的资源(例如Servlet,HTML文件,JSP文件),并可以通过其中的方法将客户端的请求转发给所包装的资源RequestDispatcher接口中定义了两个方法:forward方法和include方法forward方法和include方法接收的两个参数必须是传递给当前Servlet的service方法的那两个ServletRequest和ServletResponse对象。获取RequestDispatcher的方法

– ServletContext.getRequestDispatcher(参数只能是以“/”开头的路径)

– ServletRequest.getRequestDispatcher(参数可以是不以“/”开头的路径)

– ServletContext.getNamedDispacher

用forward方法实现请求转发

测试forward方法

首先建立一个html,其中有一个超链接跳转到forwardServlet。

在ForwardServlet中写下响应,并用forward方法跳转至TestServlet处

tsetServlet的service方法打印接受的请求

运行结果

用sendRedirect方法实现请求重定向

运行结果

forward()方法和sendRedirect方法的区别

forward()方法执行以后,网址不变,只向服务器发送了一次请求,sendRedirect()方法执行以后,网址改变,向服务器发送了两次请求

在谷歌浏览器中运行可以知道,forward()只有一次请求

redirect有两次请求

请求转发:在最终的Servlet中,request对象和中转的那个request是同一个对象;请求的重定向:在最终的Servlet中,request对象和中转的那个request不是同一个对象请求转发:只能转发给当前WEB应用的资源;重定向:可以重定向到任何资源。

例子:

点击之后发现

如果用gerResquestDispatcher()的话,那么会是

==请求的转发:/ 代表的是当前WEB应用的根目录,加上了工程名即http://localhost:8080/test7/;请求的重定向,/代表web站点的根目录,即http://localhost:8080

附上源工程!!!!!

CSDN下载:/download/xd15010130025/10992312

百度网盘链接:/s/1lDhZuOChw9yvI-6DXo-ZYw

提取码:8rgl

JavaWeb请求的重定向与转发:getRequestDispatcher()的forward方法 sendRedirect方法 以及重定向与转发的区别

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。