web 路径问题

文件系统中相对路径

根目录              /

当前目录         ./

上一级目录    ../

上两级目录    ../../

下级test目录中的test.html文件    test/test.html


web应用中“/”表示的含义

1.在 jsp或html文件中

  某个含有路径的语句,例如: <a href="/ProjectName/..."></a>

  href里面第一个斜杠‘/’表示的是 tomcat 中webapps目录,后面接的ProjectName 是一个web应用名称,也是Eclipse中的项目名称。

注意:如果使用struts等框架,“/”的含义又会发生改变

 

2.在服务器servlet

  某个含有路径的语句,例如:request.getRequestDispatcher("/pages/CurrentInfo.jsp").forward(request,response);

路径里面的第一个斜杠  ‘/’ 表示的是 tomcat 中webapps的子目录即某一web应用名称,相当于当前访问的web应用目录。

 当前servlet所在路径是web.xml所在路径,所以如果某个servlet中含有"../login.jsp",则表示web-inf的上一级目录即web应用下的login.jsp。

上面蓝色字 是我之前的理解,是有问题的,但在进行request转发时,发现请求的html网页中的相对路径全都变成http://localhost:8080/project/servlet/resource/images/xxx.gif.

说明在转发的时候,请求资源中的相对路径是相对于此servlet的路径,而此servlet的路径准确说应该是web.xml中配置的路径(如:/servlet/loginCheckServlet),即此servlet所在目录(虚拟目录,并不存在)为http://localhost:8080/project/servlet,所以相对路径“resource/images/xxx.gif”实际上就是绝对路径http://localhost:8080/project/servlet/resource/images/xxx.gif.


 3.重定向

response.sendRedirect("/project/...");//首斜杠 / 表示 tomcat 目录下的 webapps 文件夹


4.web.xml

"/servlet/***" 首个斜杠表示某个web app 目录即某一web应用名称



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值