Jsp与Servlet 重定向与转发探究(二)
来源:互联网 发布:淘宝商家登入 编辑:程序博客网 时间:2024/04/20 00:04
Servlet中的请求转发与重定向探究
a. 探究过程
b. 经验总结
1.采用与 Jsp与Servlet 重定向与转发探究(一) 一样的servlet Demo,想做测试的请前往此处copy。index.jsp、servlet(ServletRequest.java 与 ServletResponse.java)与web.xml此三文件。
图1. 修改ServletRequest.java中的代码:
request.getRequestDispatcher("end.jsp").forward(request, response);
你会看到结果
无影响!
图2 继续修改:
request.getRequestDispatcher(request.getContextPath()+"/end.jsp").forward(request, response);
你会看到结果:
message处显示的是: /servletForR/servletForR/end.jsp(servletForR为我项目名)
此处报错。
图3 继续修改代码:
request.getRequestDispatcher(request.getContextPath()+"end.jsp").forward(request, response);
结果:
message处显示的是: /servletForR/servletForR.jsp
图4 我们测试response重定向对应的servlet(ServletResponse.java):
response.sendRedirect(request.getContextPath()+"end.jsp");
少了个’/’。结果是:
message处显示的是: /servletForend.jsp
这不就是少了个‘/’所以拼接错误嘛!
图5 ServletResponse.java继续修改:
response.sendRedirect("/end.jsp");
结果是:
message处显示的是: /end.jsp
有没有发觉!!! 和request请求转发的区别!!!
好,我们继续。
图6 代码修改:
response.sendRedirect("end.jsp");
结果是:
有没有感到很奇怪!!!
好吧,我总结下:
如果URL都是“x.jsp”。转发和重定向指向的都是根目录下的文件,会在根目录下索引。
而如果有”/x.jsp”。则有很大的区别。
首先从图
图
因此如果以后是在根目录,则可以选择都不加‘/’直接“x.jsp即可”。
如果不是在根目录,在某一文件中。建议:
重定向用 :request.getContextPath()+"/jsp_name"
;
请求转发用 : /filename/jsp_name
.
例:
重定向:
response.sendRedirect(request.getContextPath()+”/end.jsp”);
请求转发:
(ns为webroot下的子文件夹)
request.getRequestDispatcher("/ns/end.jsp").forward(request, response);
- Jsp与Servlet 重定向与转发探究(二)
- Jsp与Servlet 重定向与转发探究(一)
- jsp初识、servlet转发、转发与重定向的比较
- servlet转发与重定向
- Servlet-重定向与转发
- servlet转发与重定向
- JSP转发与重定向
- Jsp重定向与转发
- JSP/Servlet转发与重定向的区别
- JSP/Servlet转发与重定向的区别
- JSP/Servlet转发与重定向的区别
- JSP/Servlet转发与重定向的区别
- Jsp&Servlet 重定向、请求转发与绝对路径的问题
- servlet的转发与重定向
- servlet的转发与重定向
- Servlet中的转发与重定向
- Servlet中的转发与重定向
- servlet的转发与重定向
- java中volatile关键字的含义
- VB “秒表”窗体中有两个按钮“开始/停止”按钮
- 可拖拽GridView代码解析
- mac 终端当前目录打开finder命令
- Android 沉浸式状态栏汇总
- Jsp与Servlet 重定向与转发探究(二)
- iOS开发某个函数偶然出现问题。可能导致的原因
- 南阳题目98-成绩转换
- 一个简单的OpenGL程序,绘制一个白色正方形
- printf和cout的区别详述
- Linux笔记(69)——nginx平滑升级
- Mac下安装HomeBrew和Ag(the silver searcher)
- 网易2016Java实习生笔试题最后一题题解
- ActiveMQ学习 第一篇 入门篇