欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

绝对路径与相对路径的实例详解

程序员文章站 2022-04-25 09:25:08
...
首先辨析“/”与“\”

window中的路径一般用“\”;

java中的路径一般用“/”;如果用“\”需要对其转义成“\\”

1、绝对路径

  以根目录作为参考点的的文件或文件夹所在的路径,是硬盘上的真实路径。具有唯一性的特点。

  例如:C:\caosiege\python\project\C.py,代表的是C.txt的绝对路径

2、相对路径

  相对于某个基准目录的路径。不具有唯一性。

  例如:在servlet中,“/”代表web应用的根目录,与物理路径相对应。

     在C:\caosiege中以上的绝对路径可以写成.\python\project\C.py这种相对路径的形式。其中“.\”表示当前路径。

     “..\”代表上一级目录。

3、引伸:

  1)服务器端的地址

    服务器端的相对地址是指相对于你的web应用的地址,这个地址是在服务器端解析的。也就是说这个时候jsp与servlet的相对地址是相对于你的web应用。也就是相对于“http/192.168.0.1/webapp”。

  2)客户端的地址

    所有的html页面中的地址都是相对于服务器的根目录“http/192.168.0.1”,而不是web应用的目录。

    html中form表单的action属性是相对于服务器根目录的,所以如果提交到xxx.jsp,action=“/webapp/user/xxx.jsp”或action = “<%=request.getContextPath()%>”+

“/user/xxx.jsp”。

    一般情况下,在JSP/HTML页面等引用的CSS,Javascript.Action等属性前面最好都加上<%=request.getContextPath()%>,以确保所有的引用文件都属于web应用中的目录。

另外,应该尽量避免使用“/”,”./“,“../”等类似的相对该文件位置的相对路径,这样当文件移动时,很容易出问题。

4、获取路径的一些方法

    根目录所对应的绝对路径: request.getRequestURI()
    文件的绝对路径  : application.getRealPath(request.getRequestURI());
    当前web应用的绝对路径 : application.getRealPath(“/”);
    取得请求文件的上层目录 : new File(application.getRealPath(request.getRequestURI())).getParent()

    文件的绝对路径 : request.getSession().getServletContext().getRealPath(request.getRequestURL())
    当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath(“/”);
    (ServletContext对象获得几种方式:
    javax.servlet.http.HttpSession.getServletContext()
    javax.servlet.jsp.PageContext.getServletContext()
    javax.servlet.ServletConfig.getServletContext()

以上就是绝对路径与相对路径的实例详解的详细内容,更多请关注其它相关文章!