路徑 專題
常用地址的寫法:
絕對路徑:
以/開頭的路徑就叫做絕對路徑,絕對路徑在相對於的路徑上直接拼接得到最終的路徑
相對路徑:
不以/開頭的路徑就叫做相對路徑,相對路徑基於當前所在的路徑計算的到最終的路徑
硬盤路徑:
以盤符開頭的路徑就叫做硬盤路徑.是哪個路徑就是哪個路徑.沒有相對於誰的問題
虛擬路徑: --寫虛擬路徑時都使用絕對路徑
1)如果路徑是給瀏覽器用的,這個路徑相對於虛擬主機,所以需要寫上web應用的名稱
<a href="/Day04/.....">
<form action="/Day04/...">
<img src="/Day04/....">
response.setHeader("Location","/Day04/....");
response.setHeader("refresh","3;url=/Day04/...");
response.sendRedirect("/Day04/...");
2)如果路徑是個服務器用的,這個路徑相對於web應用,所以可以省寫web應用的名稱
request.getRequestDispathce("/index.jsp").forward();
request.getRequestDispathce("/index.jsp").include();
真實路徑: --寫真實路徑時都使用相對路徑
根據原理,具體問題具體分析
servletContext.getRealPath("config.properties");//--給一個相對於web應用目錄的路徑
目的:讀資源的
原理: 在給進去的路徑之前,拼接web應用的硬盤路徑
classLoader.getResource("../../config.properties");//--給一個相對於類加載目錄的路徑,
//--比如配置文件(onfig.properties)剛好在web應用底下
目的:類加載器去加載資源
原理:類加載的目錄下去加載資源,類加載的目錄下即:class目錄
File file = new File("config.properties");與new InputStream("config.properties");
//--相對於程序的啟動目錄,
//--如果是tomcat運行環境下,相當於tomcat的bin目錄,
//--如果是普通得java工程,相當於當前java工程的根目錄
類加載器用法舉例:(此處只是講解類加載的用法,這個例子不適合舉例相對路徑與絕對路徑的區別)
路徑 專題