Web路径中的/

参考1:https://www.jianshu.com/p/7301290e4a94
参考2:https://www.cnblogs.com/Libinkai/p/9376353.html
参考3:https://www.cnblogs.com/liudegui/p/11761813.html
参考4:https://blog.csdn.net/qq_35634181/article/details/90146095
首先弄明白什么是相对路径和绝对路径
绝对路径
在计算机中绝对路径是指带有访问协议的路径,又可分为本地绝对路径和网络绝对路径。
本地绝对路径:带盘符的路径。如:D:\ssh\images\aa.jpg 是一个绝对路径,不过,对于本地路径,其实是省略了file协议的。其带协议的全路径为:file:///D:\ssh\images\aa.jpg
网络绝对路径:http://127.0.0.1:8080/primary/index.jsp就是一个绝对路径。带有http协议

相对路径
首先,只有绝对路径才可以唯一地确定某个资源的位置,所以相对路径最终也需要转化为绝对路径。
相对路径与绝对路径地关系为:绝对路径 = 参考路径 + 相对路径
  什么是参考路径呢?例如,你要告诉对方你现在的位置,你说:我在人民公园的正门门口。这就是个相对地址。因为很多城市都有人民公园,每个人民公园也都有正门。当对方不知道你在哪个城市时,他是无法准确定位你的。当然,你之所以不说是哪个城市,是因为这里存在一个默认的参照路径:与听者在同一个城市。听者会将你所说的相对地址,自动转换为一个绝对地址:与听者在同一城市的人民公园正门门口。
  在 Web 应用中,浏览器或服务器会自动为不同的相对路径添加不同的参照路径,将相对路径转换为绝对路径,以定位这个资源。
  相对路径的写法有两种:一种是以 " / "开头的相对路径,一种是不以 " / "开头的相对路径。根据相对路径是否以斜杠开头,且路径出现的文件的不同,其默认的参照路径是不同的。这是我们学习的重点,是路径问题中最容易出错的地方:确定相对路径的参照路径。

1. 以 " / "开头的相对路径
  以斜杠开头的相对路径,根据路径所在文件所处位置的不同,分为两种:前台路径与后台路径。
  A、前台路径
  前台路径是指,由浏览器解析执行的代码中所包含的路径。如html,css,js及jsp中静态部分(html标签)所包含的路径。
  前台路径的参照路径是 Web 服务器的根路径,如 http://127.0.0.1:8080/
  将前台路径转为绝对路径是由浏览器自动完成的。前台路径的作用是要为用户提交对某种资源的请求,是要查找并定位服务器中的某资源。简单来说,前台路径的作用是“查找”。

  B、后台路径
  后台路径是指,由服务器解析执行的代码中所包含的路径。如java 代码、jsp 动态部分、xml 等配置文件中的路径。
  后台路径的参照路径是 Web 应用的根路径,如 http://127.0.0.1:8080:ssh/
  将后台路径转为绝对路径是由服务器自动完成的。后路径的作用是标识出该资源在服务器中的路径,以便客户端能够按照这个设路径来查找相应资源。简单来说,后台路径的作用是“标识”。

  C、后台路径中的特例
  后台路径的参照路径有一个特例:当使用 response.sendRedirect()方法进行重定向时,若其参照路径是以斜杠开头,则其参照路径不是 web 应用的根路径,而是 web服务器的根路径。所以使用重定向时斜杠后面要加上项目名称,如response.sendRedirect(“/fly/index.jsp”); 这是因为 sendRedirect()方法可以重定向到其它应用,若不指定要跳转的应用,其将无法确定跳转方向。

2. 不以 " / "开头的相对路径
不以 " / "开头的相对路径,无论是出现在前台页面,还是出现在后台 Java 代码或配置文件中,其参照路径都是当前访问路径的资源路径。即使是 response 的 sendRedirect()方法的参数路径。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值