当前位置: 移动技术网 > IT编程>网页制作>CSS > Java中相对路径与绝对路径区别

Java中相对路径与绝对路径区别

2018年12月09日  | 移动技术网IT编程  | 我要评论
1.绝对路径

所谓绝对路径,就是资源文件在硬盘上的真实路径或者部署到web服务器上之后引用资源的完整路径。如:

d:/项目名/css/a.css

https://localhost:8080/项目名/css/a.css

可以为中当前文件引入的资源文件使用绝对路径,强烈推荐使用绝对路径。

<%

string path = request.getcontextpath();

string basepath = request.getscheme()+"://"+request.getservername()+":"+request.getserverport()+path+"/";

%>

上述代码可获取当前项目的路径,如:https://localhost:8080/项目名称。

中添加如下一行代码:

如下图,为在此jsp文件中引入css.css

2.相对路径

所谓相对路径,就是相对于当前文件,待引入的资源文件的位置。如“a.jsp” 文件里引用了“m.js”,若a.jsp和m.js在同一个目录,只要这两个文件的相对位置没有变,那么部署到web服务器就能正常显示。

./ 当前目录 ../ 上一级目录 ../../上上一级目录

./a.js ../a.js ../../a.js

3.服务器端与客户端的路径问题

不能以是否用"/"开头,作为资源文件引用的开始,来判断使用的是绝对路径或相对路径,而应该使用这个资源文件的最终的路径来判断。

服务器端:

getservletcontext().getrealpath("/img/pic.jpg");

上述代码可以获取服务器端资源的路径,开头的/代表的是从项目根路径(站点+项目名)查找参数指定资源的路径,如:https://localhost:8080/项目名/

服务器端请求分派

string path = "/test/abc"

request.getrequestdispatcher(path).forward(request, response);

客户端:

客户访问的当前文件,其所引入的资源文件路径,开头的/代表的是服务器站点的根路径,如:https://localhost:8080/

response.sendredirect(path);

服务器端的重定向,将请求路径返回给客户端浏览器,让客户端浏览器使用返回的新请求路径,重新发起请求。其原理类似于客户端浏览器直接访问新路径,请求相关资源。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网