首页 > Web开发 > 详细

重定向,请求转发和jsp等中的路径问题

时间:2019-03-09 18:47:19      阅读:202      评论:0      收藏:0      [点我收藏+]

jsp中路径用相对路径的话jsp文件不能随便挪动,例如在webContent中直接创建的jsp文件a.jsp挪动到webContent下创建的文件夹a中,那么在a.jsp文件中用<a/>超链接访问webContent中的jsp文件b.jsp就会出现问题,除非删除a.jsp文件中开始的path和basePath的java代码块。

 

    所以说jsp中路径用相对路径的话会出现以下问题:

1、资源的位置不能随意更改;2、需要使用../进行文件夹的跳出,使用比较麻烦;

    推荐使用绝对路径:因为如果是a.jsp跳转到b.jsp文件,不管a.jsp变动多少,只要b.jsp的文件路径不发生变动,绝对路径就不会出错,

/项目名称/你的servlet或者要访问的jsp

这里的第一个/是代表服务器根目录,就是相当于localhost:8080

当然如果你的jsp文件是嵌套好几个文件夹的话,自己酌情添加/直到最后一个的是你需要的访问

 也有些是这样写的(/虚拟项目名/资源名)。总之理解就行。

注意:WebContent和src都算是根目录一类的,我也说不太清楚,但是希望理解我的意思。

    jsp中有自带的全局路径声明:在jsp的一开始写有

<% String path=request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/" ;
%>

head中写有<base href = "<%=basePath%>"

这几句相当于是绝对路径,在路径中只要写资源的名称就行了。

不过还是推荐使用自己会写绝对路径,因为在myeclipse中会自动生成那几句绝对路径代码,但是eclipse中不自动生成。

重定向和请求转发中的路径和jsp中的路径方法类似,(应该是类似的,我试了是这样的。)

 

重定向,请求转发和jsp等中的路径问题

原文:https://www.cnblogs.com/toomucherror/p/10502348.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!