SpringMVC的请求路径
一. 请求路径的构成:
请求路径 = 资源路径+资源名称
请求路径:http://localhost:8888/springMVC-1/index.jsp
资源路径与资源名称是以请求路径中最后一个斜杠为分割线的,斜杠前的就是资源路径,斜杠后的就是资源名称
资源路径:http://localhost:8888/springMVC-1
资源名称:index.jsp
二. 请求路径的分类
根据是否可以唯一的定位一个资源,可以将路径划分为两类:相对路径和绝对路径。
1.绝对路径:
可以唯一定位一个资源。在web应用中,一般情况下,以请求协议开头的路径为绝对路径,绝对路径以URL形式表示。
绝对路径分类:
根据路径作用不同分为:资源定义路径和资源请求路径。
资源定义路径:用于资源在服务器端的位置,换句话说,就是客户端要访问该资源是必须要提交的绝对路径。
资源请求路径:客户端发出对指定资源的请求路径。
2.相对路径:
仅仅依靠该路径,无法唯一的定位一个资源。但如果将其与一个参照路径相结合,就可转换为一个绝对路径,这样的路径称为相对路径。在web应用中,一般情况下,不以协议开头的路径称为相对路径,以URI形式表示。
相对路径分类:
以相对路径是否以斜杠开头划分,可以分为:以斜杠开头的相对路径和不以斜杠开头的相对路径。
1.
以斜杠开头的相对路径,再根据路径初现的位置不同可以分为:前台路径和后台路径。
前台路径:初现再html文件,jsp文件中的静态部分的以斜杠开头的相对路径称为前台路径。前台路径解析者是浏览器。
后台路径:出现在java代码,jsp文件的动态部分,xml,properties配置 文件中的以斜杠开头的相对路径称为后台路径。后台路径的解析者是服务器。
2.
不以斜杠开头的路径,其解析者根据路径出现的位置不同,分别是浏览器和服务器。
3.
转换规则(参照路径)
不同的解析者,对同一个相对路径的解析结果是不同的。所谓的解析结果是指将相对路径转换为最终的绝对路径。绝对路径 = 参照路径 + 相对路径,所以这里的解析就是为相对路径找到对应的参照路径。
前台路径:参照路径为当前的Web服务器的根;
后台路径:参照路径为当前的Web项目的根;
不以斜杠开头的相对路径:参照路径为当前请求路径的资源路径。
请求路径:http://localhost:8888/springMVC-1/aaa/NewFile.jsp
Web服务器的根: http://localhost:8888
Web项目的根: http://localhost:8888/springMVC-1
当前请求路径的资源路径: http://localhost:8888/springMVC-1/aaa
4.
特例:
当后台代码中使用sendRedirect()方法进行重定向时,不符合前边所给出的后台太路径的参照路径,它的参照路径是web服务器的跟
注:
绝对路径 = 参照路径+相对路径