图解sendRedirect,include,forward的区别

转载 2008年09月30日 19:41:00
一、sendRedirect

使用方式:

servlet和jsp里面一样
  1. response.sendRedirect(); 
说明:
服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求指定的地址,一般来说,你会把需要的参数放在转发的地址里面。
注意:使用request.setAttribute的内容,不能读取了,你可以用session代替,或者用include,forward代替。

流程图

二、include

使用方式
servlet里面
  1. request.getRequestDispatcher("jsp2.jsp").include(request,   response);  
jsp里面
  1.   <jsp:include page="include.jsp"/>  
说明
页面会同时包含页面1和页面2的内容,地址栏不变。
使用request.setAttribute的内容,可以正常使用

流程图




三、forward

使用方式
servlet里面
  1. request.getRequestDispatcher("jsp2.jsp").forward(request,   response);  
jsp里面
  1. <jsp:forward page="include.jsp"/>  
说明
页面会是页面2的内容,地址栏不变
使用request.setAttribute的内容,可以正常使用

流程图





特殊提示
include 和 sendRediect 之后,后面的语句会继续执行,所以应该在合适的位置写上return;forward的不会




转自:http://blog.csdn.net/java2000_net/archive/2008/09/30/3002763.aspx

重定向(forward与sendRedirect)区别

quote from: http://kevinmro.blogchina.com/重定向(forward与sendRedirect)区别 最近有网友和我谈起他上次面试被别人问forward与send...
  • zhouysh
  • zhouysh
  • 2005年05月25日 11:17
  • 7450

Servlet之forward、sendRedirect、 include区别与使用

servlet中的请求转发主要有三种方式:1、 forward:是指转发,将当前request和response对象保存,交给指定的url处理。并没有表示页面的跳转,所以地址栏的地址不会发生改变。2、...
  • Evankaka
  • Evankaka
  • 2015年04月24日 10:56
  • 8129

forward与sendRedirect区别

最近有网友和我谈起他上次面试被别人问forward与sendRedirect没理解太清楚,搞得比较尴尬。现将自己对这个问题的体会写在下面。期望能对一些人有帮助。1.RequestDispatcher....
  • jljf_hh
  • jljf_hh
  • 2007年04月23日 16:44
  • 8331

forward()和sendRedirect()的区别

forward()就是转发。sendRedirect就是重定向。两者最大的区别其实是,前者传输不会改变地址,不能在传输参数,只能在代码中设置参数;而后者是跳转到指定的url地址,会改变地址栏上的信息,...
  • baidu_16859039
  • baidu_16859039
  • 2015年10月17日 21:35
  • 872

图解sendRedirect,include,forward的区别

最近遇到几个人出现了和这三个有关的问题,特别是sendRedirect使用request.getAttribute的问题。我这里给出三个的主要区别并提供一个图形参考。原文:http://www.jav...
  • java2000_net
  • java2000_net
  • 2008年09月30日 14:35
  • 5864

转:图解sendRedirect,include,forward的区别

原文:http://www.java2000.net/p10576
  • 5iasp
  • 5iasp
  • 2009年06月14日 10:34
  • 580

sendredirect,forward,include区别

首先,sendRedirect与forward,include的最大区别是request,response.. sendRedirect产生新的请求与响应,前后已没有联系. 相当于在页面中重新...
  • zhch152
  • zhch152
  • 2012年07月27日 14:42
  • 601

jsp中forward与sendRedirect的区别

页面之间的跳转可以通过两种方式实现:forward和sendRedirect。 forward:可以在JSP页面中使用,可以在Servlet中实现。在JSP页面中使用,例如要跳转到userlist.j...
  • cation
  • cation
  • 2009年06月18日 10:46
  • 2908

Servlet API中forward() 与sendRedirect ()的区别?(就是请求转发和重定向的区别) ?

请求转发:请求转发是指将请求再转发到另一资源(一般为JSP或Servlet)。此过程依然在同一个请求范围内,转发后浏览器地址栏内容不变,请求转发使用RequestDispatcher接口中的forwa...
  • Puzzle_48hcy
  • Puzzle_48hcy
  • 2017年06月14日 08:00
  • 350

sendRedirect、forward、include的区别

sendRedirect告诉浏览器访问新的url。 forward是把控制权转交到另一个servlet,浏览器的url不变。 include是把请求发送给另一个servlet,让它协助完成某任务,然后...
  • u011183517
  • u011183517
  • 2016年04月08日 10:35
  • 178
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:图解sendRedirect,include,forward的区别
举报原因:
原因补充:

(最多只允许输入30个字)