- 7
- 0
- 约2.61千字
- 约 3页
- 2017-06-08 发布于河南
- 举报
JSP绝对路径与相对路径
绝对路径与相对路径
如果咱们使用的URL网址是以“/”开头的,那么这个网址就叫做绝对路径。
如果咱们使用的URL网址不是“/”开头的,那么这个网址就叫做相对路径。
看看lingo-sample/03-03/这个例子,如果我们去请求relative/forward.jsp或redirect.jsp,然后从这里再跳转向它下面的result/result.jsp会怎样呢?
forward的例子:
%request.getRequestDispatcher result/result.jsp .forward request, response ;%
这里的相对路径就是result/result.jsp。
因为刚刚请求的test.jsp是在/03-03/relative/下,所以我们的当前路径就是/03-03/relative/,执行forward的时候会寻找当前路径下的result/result.jsp,找到之后便转发请求。
redirect的例子:
%response.sendRedirect result/result.jsp ;%
这里的相对路径也是result/result.jsp。
因为刚刚请求的test.jsp是在/03-03/relative/下,所以我们的当前路径就是/03-03/relative/,执行redirect的时候会把当前路径加上result/result.jsp,把结果作为重定向的地址发送给浏览器,浏览器再去请求/03-03/relative/result/result.jsp,从而得到响应。
绝对路径
问题出现了,绝对路径在forward和redirect中出现了差别,还是刚才的情况,但使用绝对路径的时候写法便不同了。
forward的例子:
%request.getRequestDispatcher /relative/result/result.jsp .forward request, response ;%
这里的绝对路径就是/relative/result/result.jsp。
在本地测试时,forward把http://localhost:8080/03-03/当作根路径,在它的基础上计算绝对路径。
这是由jsp的部署方式决定的,webapp里可以放好多项目,为了让这些项目可以互不影响、独立运行,不能让请求从一个项目直接在服务器内部转移到另一个项目。为了防止出现这种情况,在执行forward的时候干脆把项目的路径当作根目录,开发者看不到其他项目,也就不会出现问题了。
redirect的例子:
%response.sendRedirect /03-03/absolute/result/result.jsp ;%
这里的绝对路径却是/03-03/absolute/result/result.jsp。
在本地测试时,redirect把http://localhost:8080/当作根路径,在它的基础上计算绝对路径。
因为redirect会让浏览器重新发起一个新请求,所以不会搅乱服务器里多个项目之间的关系,也就不需要对它做限制,如果需要在多个项目之间进行跳转,就只能使用redirect。不过因为重新发起了新的请求,上次请求的那些数据都会丢失,如果有什么重要的数据,记得要重新设置。
forward导致找不到图片
要演示这个问题,是非常容易的,只需要满足两个条件:
forward前后的jsp页面不在一个目录下。
forward后的jsp页面里使用相对路径引用一些资源,图片,js脚本,css样式表什么的。
03-04里就模拟了这样一个环境,你进入http://localhost:8080/03-04/,选择“有问题的”:
打开03-04可以看到如下的目录结构:
|--+ 03-04 |--- index.jsp |--- test.jsp |--+ result |--- success.jsp |--- failure.jsp |--- lingo.png
刚才咱们看到的页面是failure.jsp,它里边显示图片的部分是:
img src lingo.png /
这时候就有疑问了,lingo.png和failure.jsp明明在同一个目录下,为什么无法显示。
现在请在无法显示的图片上,点击鼠标右键,选择属性,让我们看一下图片的请求地址:
图片的位置本来在http://localhost:8080/03-04/result/lingo.png,但请求的地址却是http://localhost:8080/03-04/lingo.png。问题就是丢掉了中间的/result。
再试一次index.jsp上的“没问题的”:
这次我们看到的页面是success.jsp,它里边显示图片的部
您可能关注的文档
- 练练有词21-30单元pard D.docx
- 第二章 线性表(Linear List).ppt
- 题库3.doc
- 心脏泵血详案2).doc
- 报刊常见简短词,缩略词.doc
- 法语避免说.docx
- ch2 linear time-invariant systems线性时不变系统.ppt
- 英语四级预测题词汇.doc
- 英汉对比——词.ppt
- Domino如何限制附件大小.doc
- 良肢位摆放在骨科康复中的应用.ppt
- 2026精选人教版一年级上册数学期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).pdf
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级上册数学期末考试试卷(3套含答案解析).pdf
- 2026新版人教版三年级下册数学期末考试试卷(3套含答案解析).docx
- 2026精选人教版四年级上册英语期末考试试卷(3套含答案解析).docx
- 2026新版人教版三年级上册语文期末考试试卷(3套含答案解析).docx
- 良肢位摆放与康复训练的结合.ppt
- 良肢位摆放在儿童康复中的应用.ppt
最近下载
- 生死二十八天.docx VIP
- 《水浒传》知识竞赛200题.doc VIP
- 李可六经临床方剂参考(摘自孙其新《李可六经辨证学》.pdf VIP
- 2025年高考数学第一轮复习考点讲与练第06讲平面向量中的范围与最值问题(高阶拓展、竞赛适用)(学生版+解析).docx VIP
- 2025年高考数学第一轮复习考点讲与练第13讲泰勒展开式及相关不等式放缩在导数中的应用(高阶拓展、竞赛适用)(学生版+解析).docx VIP
- 高考数学第一轮复习(新教材新高考)专题06权方和不等式(高阶拓展)(核心考点精讲精练)(学生版+解析).docx VIP
- 2026年熔化焊接与热切割考试试题及解析.docx VIP
- 高考数学第一轮复习(新教材新高考)第02讲平面向量的数量积(核心考点精讲精练)(学生版+解析).docx VIP
- 电气装置安装工程-低压电器施工及验收规范GB50254.doc VIP
- 2025年高考数学第一轮复习考点讲与练第05讲平面向量之极化恒等式(高阶拓展、竞赛适用)(学生版+解析).docx VIP
原创力文档

文档评论(0)