1。 浏览器向 test。jsp 发送请求。
2。 test。jsp 计算客户选择的颜色,将请求转发至 red。jsp。
3。 red。jsp 返回响应给浏览器。
27 / 148
…………………………………………………………Page 28……………………………………………………………
这下知道为什么浏览器的地址没有变化了吧?因为浏览器只是执行了对
test。jsp 的请求,test。jsp 到 red。jsp 的部分是在服务器内执行的,浏览器并
不知道服务器里到底发生了什么,它只知道自己获得的响应是 test。jsp 发回来
的,甚至不知道服务器还有个red。jsp。
这就是请求转发 forward 了。例子见 lingo…sample/03…01/。
3。3。 如果用 redirect
test。jsp 中需要这样写:
略过取得参数与比较参数值不提,只关注 redirect 的部分:
response。sendRedirect(〃red。jsp〃);
response 翻译过来就是响应,代表着 http 响应。调用 response 的
sendRedirect(〃red。jsp〃)方法,将页面重定向到 red。jsp。
再请大家注意一下浏览器的 url 地址:
选择红色页面时:
28 / 148
…………………………………………………………Page 29……………………………………………………………
选择绿色页面时:
与 forward 不同,url 地址一直在变化,红色的时候显示 red。jsp,绿色的时候
显示 green。jsp。
再看一下流程图吧:
1。 浏览器向 test。jsp 发送请求。
2。 test。jsp 计算客户选择的颜色,向浏览器发送一个页面重定向
(redirect)的响应,响应中包含red。jsp 的url 地址。
29 / 148
…………………………………………………………Page 30……………………………………………………………
3。 浏览器根据页面重定向(redirect)响应中的red。jsp 地址,再次向服务
器发送请求,这次请求的就是 red。jsp 了。
4。 red。jsp 执行,返回响应。
30 / 148
…………………………………………………………Page 31……………………………………………………………
redirect 会触发另一个请求响应流程,第二次请求的时候是由浏览器发起对
red。jsp 的请求,所以url 地址改变了。
这就是页面重定向 redirect 了。例子见 lingo…sample/03…02/。
3。4。 forward 和 redirect 的问题
3。4。1。 绝对路径与相对路径
1。 如果咱们使用的 URL 网址是以“/”开头的,那么这个网址就叫做绝对路
径。
2。 如果咱们使用的 URL 网址不是“/”开头的,那么这个网址就叫做相对路
径。
3。4。1。1。 相对路径
在相对路径上,两者的表现是相同的。
看看 lingo…sample/03…03/这个例子,如果我们去请求 relative/forward。jsp
或 redirect。jsp,然后从这里再跳转向它下面的result/result。jsp 会怎样呢?
1。 forward 的例子:
这里的相对路径就是 result/result。jsp。
31 / 148
…………………………………………………………Page 32……………………………………………………………
因为刚刚请求的 test。jsp 是在/03…03/relative/下,所以我们的当前路
径就是/03…03/relative/,执行 forward 的时候会寻找当前路径下的
result/result。jsp,找到之后便转发请求。
2。 redirect 的例子:
这里的相对路径也是 result/result。jsp。
因为刚刚请求的 test。jsp 是在/03…03/relative/下,所以我们的当前路
径就是/03…03/relative/,执行 redirect 的时候会把当前路径加上
result/result。jsp,把结果作为重定向的地址发送给浏览器,浏览器再
去请求/03…03/relative/result/result。jsp,从而得到响应。
3。4。1。2。 绝对路径
问题出现了,绝对路径在forward 和 redirect 中出现了差别,还是刚才的情况,
但使用绝对路径的时候写法便不同了。
1。 forward 的例子:
这里的绝对路径就是/relative/result/result。jsp。
在本地测试时,forward 把 http://localhost:8080/03…03/当作根路径,
在它的基础上计算绝对路径。
这是由 jsp 的部署方式决定的,webapp 里可以放好多项目,为了让这些
项目可以互不影响、独立运行,不能让请求从一个项目直接在服务器内部
转移到另一个项目。为了防止出现这种情况,在执行 forward 的时候干脆
把项目的路径当作根目录,开发者看不到其他项目,也就不会出现问题了。
2。 redirect 的例子:
这里的绝对路径却是/03…03/absolute/result/result。jsp。
32 / 148
…………………………………………………………Page 33……………………………………………………………
在本地测试时,redirect 把 h
小说推荐
- php程序设计简明教程(DOC格式)
- -Page 1-PHP 程序设计简明教程PHP 讲义 第 1 页 共 90 页-Page 2-目录序 4第一章 PHP 简介 6
- 最新章:第31章
- asp基础实用教程(DOC格式)
- 目 录一、关于ASP二、ASP的新功能三、创建ASP页四、使用脚本语言五、使用变量和常量六、使用集合七、ASP内建对象八、向浏览器发送内容九、包含文件十、访问数据库十一、调试ASP脚本十二、维护ASP应用程序的安全一、关于ASP Active Server Pages(ASP)是服务器端脚本编写环境
- 最新章:第17章
- asp基础入门篇(DOC格式)
- ASP入门与实例-IIS的安装与配置1、运行环境与软件要求Windows 2000 以上(不包括Windows XP Home版)IIS 4.0 以上Microsoft Access 2000Dreamweaver MX2、IIS的安装与配置a.安装IIS若操作系统中还未安装IIS服务器,可打开"控
- 最新章:第23章
- C语言游戏编程从入门到精通(PDF格式)
- -Page 1-Page 2-Page 3-Page 4-Page 5-Page 6-Page 7-Page 8-Page 9-Page 10-Page 11-Page 12-Page 13-Page 14
- 最新章:第4章
- JMS简明教程(PDF格式)
- -Page 1-JMS1.1规范中文版卫建军2007‐11‐22-Page 2
- 最新章:第28章
- C语言实例教程(PDF格式)
- -Page 1-前 言Visual C+是开发运行于Windows 95和Windows NT环境下的Win32应用程序的可视化编程工具中最重要的成员之一,它为软件开发人员提供了完整的编辑、编译和调试工具和建立于Win32 API(ApplicationProgramming Interface)基
- 最新章:第143章
- Word2003使用技巧大全(DOC格式)
- Word使用技巧(二)表格使用大全更新时间:2009-11-16 19:32:15 本文共阅读了257次 作者:xushezheng 文章来源:电教组字体大小:大中小一、快速插入表格 拖动“插入表格”能插入的最大表格跟该图标位置、显示分辨率有关。如使用800×600分辨率时最大为18行×28列 二、
- 最新章:第1章
- Excel word ppt office使用技巧大全(DOC格式)
- -Page 1-Excel_word_ppt_使用技巧大全(完全版)Excelwordppt使用技巧大全(2011新版本)I-Page 2-Excel_word_ppt_使用技巧大全(完全版
- 最新章:第338章
- oracle从入门到精通(PDF格式)
- -Page 1-Oracle 从入门到精通-Page 2-资源来自网络,仅供学习 Oracle 从入门到精通一、SQL 8
- 最新章:第37章