绝对路径:带访问协议的路径
本地绝对路径:带有盘符的路径,如:D:\\image\\hello.jpg就是一个绝对路径,不过,对于本地路径,实际上是省略了file协议的,其带协议的全路径实际为:file:///D:\\image\\hello.jpg
网络绝对路径:http://localhost:8080/test/index.jsp就是一个绝对路径,带有http访问协议
相对路径
(1)以斜杠开头的相对路径:
1).前台相对路径:所谓前台相对路径是指,由浏览器解析执行的代码中所包含的路径,例如:Html,Css,js中的路径,及jsp中静态部分的路径,像html和jsp中的静态部分中的
<img src=""/>,<a href=""/>,<form action=""/>等,css中的background:img("")等;js中的window.location.href=""等,都属于前台路径
前台相对路径的参照路径是web服务器的根路径,即:http://127.0.0.1:8080/
2).后台相对路径:所谓后台相对路径是指由服务器解析执行的代码及文件中所包含的路径,例如,java代码中的路径,jsp文件中动态部分中的路径,xml文件中的路径
后台相对路径的残照路径是Web应用的路径,例如:http://localhost:8080/01-primary
(2)不以斜杠开头的相对路径:无论是前台了路径还是后台路劲根,起参照路径是当前资源的访问路径,而不是当前资源的保存路径.
示例:
<!--要想访问下面的package中定义的action,则需要提交请求的绝对路径应该是:
http://127.0.0.1:8080/01-primary/test/Login.action-->
<package name="demo" namespace="/test" extends="struts-default">
<action name="Login" class="com.Kevins.actions.LoginAction">
<result name="success">/welcome.jsp</result>
</action>
</package>
<!-- 下面的相对路径是不带斜杠的相对路劲,起参照路径是当前的访问路径,
而当前的访问路劲是
所以下面的相对路径转变为绝对路径后为:
http://127.0.0.1:8080/01-primary/test/Login.action,能访问到package中的action
-->
<form action="test/Login.action" method="post">
姓名:<input type="text" name="name"/><br>
年龄:<input type="text" name="age"/><br>
<input type="submit" value="登录"/>
</form>
<!--下面的相对路径是带斜杠的前台相对路径,其转变为绝对路径后为:
http://127.0.0.1:8080/test/Login.action 不能访问到package中的action
-->
<form action="/test/Login.action" method="post">
姓名:<input type="text" name="name"/><br>
年龄:<input type="text" name="age"/><br>
<input type="submit" value="登录"/>
</form>