jsp中<jsp:forward page=""/>和response.sendRedirect("")两种跳转的区别

一、response.sendRedirect("")

始终要记住一点就是这种跳转是让客户端浏览器自己去访问指定的页面,这个指定页面的地址就是sendRedirect("")参数的内容。如果跳转的页面是webapp里面的页面,客户端需要两层访问服务器。如果是其他网址的话,客户端则不再访问此服务器,转而访问其他的服务器。是服务器端与客户端的两次往返。速度还是慢些。

(1)地址栏内容有变化。

(2)sendRedirect("")后的语句依旧执行,所以在此语句后面的有向客户端传送信息的语句时候会出现闪烁现象,一般情况下可以做个判断来,如果怎么样则转向指定的页面,否则执行其他的代码。

(3)sendRedirect("")里的参数可以是网页也可以是jsp页面等。

如sendRedirect(“http://www.baidu.com”)//转到webapp外面去。

sendRedirect(“a.jsp”)     //转到webapp里面的其他页面去。

(4)如果写成sendRedirect(“/a.jsp”)此时的/代表的是http://127.0.0.1/,它并不包含这个页面所在的webapp。所以要在/后面加上a.jsp的路径。

(5)它们不共用一个request对象。而且跳转页面a.jsp是接收不到传递给包含此跳转指令的页面的参数的。但是包含此跳转指令的页面可以向跳转页面中传递参数,此时跳转页面a.jsp能够接收到传递的参数。如sendRedirect(“a.jsp?name=123”),所以说用此种跳转的话可以让包含此跳转指令的页面接收到参数,然后将参数再往跳转页面中传递。

二、<jsp:forward  page= ""/>

始终要记住一点就是这种跳转是让服务器端内部进行跳转。而且只能在服务器的内部转换,并将跳转到最后一个页面的执行结果返回给客户端,速度快。

(1) 地址栏内容没有变化。

(2) <jsp:forward page=""/>后面的语句不会被执行的。

(3)如果写成<jsp:forward page=“/a.jsp”/>,此时的/代表的是http://127.0.0.1/工程名,此时在后面要跟上a.jsp的路径。

(4)跳转页面a.jsp和包含跳转页面不共用一个request对象。但是跳转页面可以访问到传递给包含此跳转指令的页面的参数的, 跳转的页面的request包含的参数比包含跳转指令的页面的参数要大。这种情况和静态包含和动态包含相似。

(5)包含此跳转指令的页面可以向要跳转到的页面传递参数。

传参方式一:<jsp:forward page=“a.jsp?param=123”/>时被包含的jsp页面是可以访问该参数的。

传参方式二:

<jsp:forward page=“a.jsp”>

<jsp:param name=“” value=“”/>

</ jsp:include >

jsp:forward response.sendRedirect的更多相关文章

  1. 关于jsp中response.sendRedirect显示错误

    今天在jsp中作判断时,当不同条件时利用response.sendRedirect(“url”)来转向不同的页面,首先是判断验证码,当错误时就转向错误页面:当正确时,才进行用户名和密码的判断,同样也r ...

  2. 转response.sendRedirect()与request.getRequestDispatcher().forward()区别

    JSP中response.sendRedirect()与request.getRequestDispatcher().forward(request,response)这两个对象都可以使页面跳转,但是 ...

  3. 让你明白response.sendRedirect()与request.getRequestDispatcher().forward()区别

    JSP中response.sendRedirect()与request.getRequestDispatcher().forward(request,response)这两个对象都可以使页面跳转,但是 ...

  4. Jsp重定向(response.sendRedirect())和转发(request.getRequestDispatcher().forward(request,r)的差别

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...

  5. response.sendRedirect跳转 jsp:forward跳转

    response.sendRedirect跳转 <% response.sendRedirect("online.jsp"); %> jsp:forward跳转 < ...

  6. jsp/servlet 中sendRedirect,include,forward区别

    1 sendRedirect response.sendRedirect(); 服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求新的地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以sess ...

  7. response.sendRedirect()与request.getRequestDispatcher().forward()区别

    Servlet中response.sendRedirect()与request.getRequestDispatcher().forward(request,response)这两个对象都可以使页面跳 ...

  8. <jsp:forward>、requestDispatcher和sendRedirect()的区别

    1.会话信息保存在服务器内存上,可以断续访问,和cookie相比,其保存在服务器上. 2.男人就像蓝牙:只有在你接近时,他才会找上你.当你离开后,他便又去找其他的"设备"了.女人就 ...

  9. javaweb中重定向和请求转发(response.sendRedirect()和request.getRequestDispatcher(rul).forward(request,response)))的区别

    先来两张图,方便理解: 可以看出,重定向时,是服务器向游览器重新发送了一个response命令,让游览器再次向url2发送请求,以获取url2的资源 而请求转发时,类似于是服务器自己向自己发了一个跳转 ...

随机推荐

  1. 【转】virtualenv -- python虚拟沙盒

    有人说:virtualenv.fabric 和 pip 是 pythoneer 的三大神器. 不管认不认同,至少要先认识一下,pip现在倒是经常用到,virtualenv第一次听说,不过,总得尝试一下 ...

  2. jQuery官方基础教程笔记(转载)

    本文转载于阮一峰的博文,内容基础,结构清晰,是jquery入门不可多得的资料,非常好,赞一个. 阮一峰:jQuery官方基础教程笔记 jQuery是目前使用最广泛的javascript函数库. 据统计 ...

  3. Cocos2d-x v3.6制作射箭游戏(二)

    原文 Cocos2d-x v3.6制作射箭游戏(二) 六 24, 2015by RENSHANin COCOS2D-X 上章我们创建并加载了游戏地图,接下来的两章我们将实现如下的效果. 在开始之前,先 ...

  4. VS2013_QT255开发相关技巧理解心得

    1. 在VS2013中打开QTCreater新建的项目 (1)通过双击.ui 打开QT的设计器,然后修改. (2)通过QT设计器,新建ui文件,放在VSQT的工程中 但是需要对此xxx.ui文件,进行 ...

  5. inotify 心得

    inotify 心得 一.inotify简介 inotify是Linux内核2.6.13 (June 18, 2005)版本新增的一个子系统(API),它提供了一种监控文件系统(基于inode的)事件 ...

  6. 《Linux内核设计与实现》读书笔记(十七)- 设备与模块

    本章主要讨论与linux的设备驱动和设备管理的相关的4个内核成分,设备类型,模块,内核对象,sysfs. 主要内容: 设备类型 内核模块 内核对象 sysfs 总结 1. 设备类型 linux中主要由 ...

  7. 【转载】关于Linux Shell 特殊字符

    一.通配符     1.一般通配符       ① * (星号):匹配字符的0次或多次出现       举例:f*可以匹配f.fa.fls.a     注意:“.”和“/”必须显示匹配         ...

  8. mac下缺乏make wget怎么办?

    1.下载command Line tools for Xcode http://www.mkyong.com/mac/how-to-install-gcc-compiler-on-mac-os-x/ ...

  9. mysql 5.6.17 x64 安装

    下载地址 百度网盘地址:http://pan.baidu.com/share/link?shareid=1895747668&uk=3257050114&fid=234538452 官 ...

  10. atitit.api设计 方法 指南 手册 v2 q929.docx

    atitit.api设计 方法 指南 手册 v2 q929.docx atitit.api设计原则与方法 1. 归一化(锤子钉子理论)1 1.1. 链式方法2 1.2. 规则5:建立返回值类型2 1. ...