ServletContext#getRealPath( ) 方法轉換 Web 內容路徑(伺服器磁碟上展開的 WAR 資料夾結構中的路徑)檔案系統)到絕對磁碟檔案系統路徑。
傳遞給getRealPath() 的「/」表示Web 內容根目錄,即以下項目結構中的/web 資料夾:
|-- src
| :
|
|-- 網頁
| |-- META-INF
| | `-- MANIFEST.MF
| |-- WEB-INF
| | `-- web.xml
| |--index.jsp
| `` -- login.jsp
:
因此,getRealPath("/") 傳回 /web 資料夾的絕對磁碟檔案系統路徑項目的擴充 WAR 檔案。
避免使用getRealPath(),因為有更便攜的解決方案:
對寫入的檔案進行的修改getRealPath() 返回的路徑在WAR時丟失
getRealPath() 假定 WAR 檔案已擴展到磁碟檔案系統,但情況並非總是如此。在這種情況下,getRealPath() 可能會傳回 null 或意外的路徑。
以上是ServletContext.getRealPath('/') 傳回什麼以及何時應該避免使用它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!