转发:

<%
pageContext.setAttribute("pageContextAttr", "pageContextAttribute");
request.setAttribute("requestAttr", "requestAttribute");
session.setAttribute("sessionAttr", "sessionAttribute");
application.setAttribute("applicationAttr", "applicationAttribute");
%> pageContext:<%=pageContext.getAttribute("pageContextAttr")%><br />
request:<%=request.getAttribute("requestAttr")%><br />
session:<%=session.getAttribute("sessionAttr")%><br />
application:<%=application.getAttribute("applicationAttr")%><br /> <%
String servletName = "myELServletPage.jsp";
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/" + servletName);
requestDispatcher.forward(request, response);
// 1、 重定向 "/"代表当前web站点的根目录
// 转发:“/”代表当期web应用的 根目录。
// 2、转发:只能转发到当前web应用的资源;
// 重定向:可以重定向到任何资源(包括外部资源)。
%>

重定向:

<%
pageContext.setAttribute("pageContextAttr", "pageContextAttribute");
request.setAttribute("requestAttr", "requestAttribute");
session.setAttribute("sessionAttr", "sessionAttribute");
application.setAttribute("applicationAttr", "applicationAttribute");
%> pageContext:<%=pageContext.getAttribute("pageContextAttr")%><br />
request:<%=request.getAttribute("requestAttr")%><br />
session:<%=session.getAttribute("sessionAttr")%><br />
application:<%=application.getAttribute("applicationAttr")%><br /> <%
// 1、 重定向 "/"代表当前web站点的根目录
// 转发:“/”代表当期web应用的 根目录。
response.sendRedirect("myRedirectPage.jsp"); // 2、转发:只能转发到当前web应用的资源;
// 重定向:可以重定向到任何资源(包括外部资源)。
%>

myELServletPage.jsp与myRedirectPage.jsp内容都相同:

    pageContext:<%= pageContext.getAttribute("pageContextAttr") %><br/>
request:<%= request.getAttribute("requestAttr") %><br/>
session:<%= session.getAttribute("sessionAttr") %><br/>
application:<%= application.getAttribute("applicationAttr") %><br/>

当访问转发页面时,结果是:

当访重定向页面时,结果是:

转发与从定向区别:

1、用法却别:

重定向请求:1、调用HttpServletRequest 的getRequestDispatcher()的方法,获取RequestDispatcher对象, 调用getRequestDispatcher()需要传入转发的地址。

2、调用HttpServletRequest的forward(request,response)方法。

转发请求:调用HttpServletResponse对象的sendRedirect()方法,直接在sendRedirect()方法中传入要转发的目标地址。

2、重定向请求: "/"代表当前web站点的根目录;
     转发请求:“/”代表当期web应用的 根目录。

3、重定向请求:可以重定向到任何资源(包括外部资源);

转发请求:只能转发到当前web应用的资源。

4、重定向请求:只发送了一个次请求。浏览器地址不发送变化。

转发请求:发送了两次请求。浏览器地址发送变化。

5、转化请求:目的页面可以接受该页面传递的参数信息。在最终的Servlet中,request对象和中转的那个request是同一个对象。
    重定向请求:在最终的Servlet中,request对象和中转的那个request不是同一个对象。

最新文章

  1. C语言产生标准正态分布或高斯分布随机数
  2. Some thing about Graph
  3. CSS3参考手册
  4. 关于使用regsvr32命令注册ActiveX控件失败的解决办法
  5. IIS Shared Configuration
  6. 关于StrutsTypeConverter类型转换器
  7. jQuery Pagination Ajax分页插件中文详解(摘)
  8. HDU 1787 GCD Again
  9. js jquery 获取元素(父节点,子节点,兄弟节点),元素筛选
  10. Linux跑脚本用sh和./有什么区别?(转)
  11. [20180828]exadata--豆腐渣系统的保护神.txt
  12. 把本人基于Dubbo的毕业设计分享粗来~
  13. Angel - MemoryDataBlock - angel.task.estimize.sample.number
  14. JAVA基础--重新整理(1)后版
  15. Map和String类型之间的转换
  16. KVM虚拟化管理 virt manager常用操作
  17. golang interface判断为空nil
  18. hive类型转化错误,会错误提示指定分区参数
  19. 06_python_小数据池/ is == /编码
  20. 微信小程序之生命周期

热门文章

  1. Excel中COUNTIFS函数统计词频个数出现次数
  2. hdu1232 并查集
  3. CentOS 6.7安装Mysql 5.7
  4. golang github.com/go-sql-driver/mysql 遇到的数据库,设置库设计不合理的解决方法
  5. viso 由于形状保护和/或图层属性设置不能进行编辑
  6. Qt 控件随窗口缩放
  7. *HDU 1286,2824欧拉函数
  8. thinkphp框架3.2的cookie删除问题记录
  9. IOS第18天(1,核心动画layer, 旋转,缩放,平移,边框,剪裁,圆角)
  10. token原理