1. 程式人生 > >JAVA_WEB專案中響應端獲取檔案路徑的方式(tomcat伺服器)

JAVA_WEB專案中響應端獲取檔案路徑的方式(tomcat伺服器)

Web專案中響應端獲取檔案路徑的方式(tomcat伺服器):
比如我在這個Web專案下有放置了這些檔案,需要獲取它們的路徑

這裡寫圖片描述
1.放置在Web專案下的src目錄中的 d.txt 檔案路徑獲取:
ServletContext con = this.getServletContext(); // 獲取全域性域物件
String path = con.getRealPath(“/WEB-INF/classes/d.txt”); // 獲取 Web專案的src目錄下的d.txt檔案的路徑

2.放置在WEB-INF資料夾下的 b.txt 檔案路徑獲取:
ServletContext con = this.getServletContext(); // 獲取全域性域物件
String path = con.getRealPath(“b.txt”); // 獲取WEB-INF 下的 b.txt檔案的路徑

3.放置在WEB-INF資料夾下的lib目錄下的a.txt檔案路徑獲取:
ServletContext con = this.getServletContext(); // 獲取全域性域物件
String path = con.getRealPath(“/WEB-INF/a.txt”); // 獲取/WEB-INF/lib目錄下的 a.txt檔案的路徑

4.放置在wula資料夾下的f.txt檔案路徑的獲取:
ServletContext con = this.getServletContext(); // 獲取全域性域物件
String path = con.getRealPath(“/WEB-INF/classes/f.txt”); // 獲取f.txt檔案的路徑

5.放置在wula檔案下的hhe包內的zz.txt檔案路徑的獲取:
ServletContext con = this.getServletContext(); // 獲取全域性域物件
String path = con.getRealPath(“/WEB-INF/classes/hhe/zz.txt”); // 獲取zz.txt檔案的路徑

為什麼路徑的書寫不盡相同?
因為在這整個web專案被新增到tomcat伺服器後,伺服器會在其所在其檔案所在的webapps目錄下建立我們新增的Web專案資料夾,而我們放置在 WebRoot 根目錄下的檔案會被放置到伺服器端專案資料夾的根目錄下(如:b.txt) , 但是我們在Web專案目錄下的xiaoxiao.txt卻並沒有被新增到伺服器端的目錄中!(所以在伺服器端無法查詢xiaoxiao.txt檔案因為根本就沒有載入進伺服器端) 而放置在 lib資料夾下的檔案會被新增到伺服器端Web專案下的WEB-INF資料夾的根目錄中(如:a.txt),在該WEB-INF資料夾下的classes資料夾下放置著Web專案中的包資料夾下的檔案(如c.txt , f.txt), 包內的檔案(如zz.txt) 會被放置在classes資料夾中以包名命名的資料夾中.

相關推薦

no