Spring MVC使用篇(五)—— 请求路径问题

1、访问路径与资源名称

  通常的URL资源访问路径有两部分构成:访问路径与资源名称。资源名称值的是要访问资源的直接名称,如show.jsp,或与要访问资源存在映射关系的间接名称,如 show.action。而访问路径,则是通过该路径则可以定位到指定的资源,即在URL资源访问路径中出了资源名称以外的其他部分。

  一般情况下,在URL访问路径中,最后一部分为资源名称,而其他部分则为访问路径。根据“访问路径是否可以独立完成资源准确定位”的判别标准,可以将访问路径分为绝对路径与相对路径。
在这里插入图片描述

2、绝对路径

  绝对路径,是指根据给出的访问路径可以准确定位到资源的路径。例如,你要告诉对方你现在的位置,你说,我现在在北京故宫游客A入口。这就是一个绝对地址,听者可以根据你所述的地址,可以准确的找到你。

  而对于计算机中Web应用的绝对路径,则是指带访问协议的路径。例如下面的路径就是一个带有http访问协议的绝对路径。

  http://127.0.0.1:8080/primary/index.jsp

3、相对路径

  相对路径,是指仅根据访问路径无法准确定位资源的路径。相对路径必须要结合其参照路径才可组成可以准确定位资源的绝对路径。参照路径的不同,所形成的可以准确定位资源的绝对路径也不同。在进行资源访问时,必须要将相对路径转换为绝对路径才可完成资源准确定位。

  例如,你要告诉对方你现在的位置,你说:我在人民公园的正门口。这就是个相对地址。因为很多城市都有人民公园,每个人民公园也都有正门。当对方不知道你在哪个城市时,他是无法准确定位你的。当然,你只所以不说是哪个城市,是因为这里存在一个默认的参照路径:与听者在同一个城市。听者会将你所说的相对地址,自动转换为一个绝对地址;与听者在同一个城市的人民公园正门门口。

  在Web应用中,相对路径的写法有两种:一种是以斜杠开头的相对路径。一种是不以斜杠开头的相对路径。根据相对路径是否以斜杠开头,且出现的文件所处的位置的不同,其默认的参照路径是不同的。这也是相对路径容易出错的地方:确定参照路径。

3.1 以斜杠开头的相对路径

  • 前台路径
      这个路径出现在静态页面或动态页面的静态部分中的路径为前台路径。前台相对路径的参照路径为Web服务器的根路径(http://127.0.0.1:8080

  • 后台路径
      这个路径出现在Java代码、配置文件(xml、properties等)或动态页面的动态部分中,则这个路径为后台路径。后台相对路径的参照路径为Web应用的根路径(http://127.0.0.1:8080/primary/)

  • 后台路径特例
      对于后台相对路径的参照路径有一个特例:当代码中使用response的sendRedirect()方法进行重定向时,其参照路径不是Web应用的根路径,而是Web服务器的根路径

3.2 不以斜杠开头的相对路径

  不以斜杠开头的相对路径,无论是前台路径,还是后台路径,其参照路径都是当前资源的访问路径,而不是当前资源的保存路径。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值