当前位置: 首页 > ops >正文

JSP中forward和redirect的区别

forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。

redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。
  • forward是你所请求的URL所在服务器,把你的请求封装成流传给forward到的目标页面(其中含有以及基本信息以及参数等),而redirect相当于你首先向你所请求的URL申请,然后此URL给你一个新的URL,你再向此新URL再来一次新的请求,所以浏览器地址栏会变,而且接受不到原先传的参数
<jsp:forward>
重定向一个html文件,jsp文件,或者是一个程序段.

jsp 语法
<jsp:forward page={"relativeurl" | "<%= expression %>"} />

or

<jsp:forward page={"relativeurl" | "<%= expression %>"} >


<jsp:param name="parametername"  value="{parametervalue | <%= expression %>}" />+


</jsp:forward>




例子
<jsp:forward page="/servlet/login" />

<jsp:forward page="/servlet/login">

<jsp:param name="username" value="jsmith" />

</jsp:forward>

描述

<jsp:forward>标签从一个jsp文件向另一个文件传递一个包含用户请求的request对象.<jsp:forward>标签以下的代码,将不能执行.


你能够向目标文件传送参数和值,在这个例子中我们传递的参数名为username,值为scott,如果你使用了<jsp:param>标签的话,目标文件必须是一个动态的文件,能够处理参数.


如果你使用了非缓冲输出的话,那么使用<jsp:forward>时就要小心。
如果在你使用<jsp:forward>之前,jsp文件已经有了数据,那么文件执行就会出错.

属性

page="{relativeurl | <%= expression %>}"
这里是一个表达式或是一个字符串用于说明你将要定向的文件或url.这个文件可以是jsp,程序段,或者其它能够处理request对象的文件(如asp,cgi,php).

<jsp:param name="parametername" value="{parametervalue | <%= expression %>}" />+
向一个动态文件发送一个或多个参数,这个文件一定是动态文件.

如果你想传递多个参数,你可以在一个jsp文件中使用多个<jsp:param>。name指定参数名,value指定参数值.

 

<jsp:forward>例子

<%@ page contentType="text/html;charset=gb2312" %>

<html>

       <head>

              <title>test</title>

       </head>

       <body>

              <jsp:forward page="forwardTo.jsp">

                     <jsp:param name="userName" value="riso"/>

              </jsp:forward>

       </body>

</html>

forwardTo.jsp

<%@ page contentType="text/html;charset=gb2312" %>

<!--forwardTo.jsp-->

<%

       String useName=request.getParameter("userName");

       String outStr= "谢谢光临!";

       outStr+=useName;

       out.println(outStr);

%>


http://www.xdnf.cn/news/11071.html

相关文章:

  • VSS使用方法详解
  • 编解码学习笔记(三):Mpeg系列——Mpeg 1和Mpeg 2
  • 如何优化百度搜索引擎?(10个技巧让你的网站更容易被搜索到)
  • Win8安装教程!笔记本用U盘安装Win8只需三步
  • rqnoj 495 化学课配制溶液
  • PPTV去广告-2(去广告补丁的制作-XP测试通过)
  • 常见JS类型转换的方法
  • 不能不读的管理学著作
  • Java Pattern和Matcher用法
  • 工作流-jbpm入门例子
  • 10个最受欢迎的HDR环境贴图下载站
  • 电脑技巧:台式机噪音非常大的几个原因以及解决办法
  • 关于labelme标注线粗细和节点大小问题
  • 钱小样经典语录
  • 【中科院】分子生物学-朱玉贤第四版-笔记-第7-8讲 翻译
  • mysql -a_mysqlda
  • Oracle 9i所有版本的最新下载地址(已验证!)
  • 职场实录:我在盛大的日子
  • 外贸网站显示不安全警告怎么办?消除网站不安全警告超全指南
  • 一个快播倒下去,千千万万个快播站起来
  • 设置导航标题颜色以及导航条背景色
  • 回归线
  • oracle数据库分层,Oracle数据仓库的分层管理器解决方案开发者网络Oracle
  • 关于WindowsMobile6.0 手机系统
  • 深入剖析ARP地址欺骗病毒原理及欺骗过程
  • PHP设置header出现警告headers already sent by (output started at......
  • C/C++ MessageBox() 弹窗的用法
  • 未来宝宝长相预测在线工具好用吗?揭秘宝宝美丽奥秘的工具
  • 大学生网页设计制作作业实例代码 (全网最全,建议收藏) HTML+CSS+JS
  • Dell 服务器安装方法介绍