相对路径:
● .表示当前目录
● ..表示上一级目录
● 资源名 当前目录/资源
绝对路径: http://ip:port/工程路径/资源路径
页面所有的相对路径在默认情况下,会参考当前访问浏览器地址栏的路径:http://ip:port(端口号)/工程名(tomcat)/+资源名进行跳转,所以可以直接写资源进行跳转。
指定页面相对路径参考的路径可以使用base标签指定。
一个页面最多只能使用一个 base 元素,它是一个单标签,位于网页头部文件的 head 标签内。浏览器解析时会在路径前加上 base 给的目标,而页面中的相对路径也都转 换成了绝对路径。使用了 base 标签就应带上 href 属性和 target 属性。
<base href="http://localhost:8080/servlet/">
在servlet中可通过request(http请求).getRequestDispatcher("/路径 /资源"). forward(request,response)(请求转发)进行跳转。
请求转发只能访问同一个工程资源的资源,只有一次请求。
“ / ”在不同位置的解析:
在 web 中 / 斜杠 如果被浏览器解析,浏览器会自动在要跳转的资源路径上加上:
http://ip[域名]:port(端口)/
在 web 中 / 斜杠 如果被服务器解析,得到的地址是:http://ip[域名]:port/工程路径/, 工程路径可动态获取:request(http请求).getContextPath()。
重定向 response(http响应).sendRediect("/"); 这条语句虽然是在服务器执行的,但是, 服务器是把斜杠 / 发送给浏览器解析。因此得到地址 http://ip[域名]:port(端口)/
在 javaWeb 中 路径最后带 / 和 不带 / 含义不同,最后带“/”表示路径,不带“/”表示资源。
如果这个路径,前面没有 / , 并且在浏览器被解析,则以浏览器当前的地址栏 去掉 资源部分,作为一个相对路径。