先辨別「/」與「\」
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(“//”)請求獲取文件目前web應用的絕對路徑:application.getRealPath(“//”)請求獲取文件。的上層目錄: new File(application.getRealPath(request.getRequestURI())).getParent()
檔案的絕對路徑: request.getSession().getServletContext().getRealPath(request. getRequestURL()) 目前web應用的絕對路徑:servletConfig.getServletContext().getRealPath(“/”);
letContexttext>物件取得方式: HttpSession.getServletContext()
javax.servlet.jsp.PageContext.getServletContext()
約
以上是絕對路徑與相對路徑的實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!