1. 程式人生 > >在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 獲取不到 tomcat 伺服器目錄

在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 獲取不到 tomcat 伺服器目錄

        今天恰好有個上傳檔案的練習需要使用 request.getSession().getServletContext().getRealPath("upload/" ); 獲取上傳到伺服器上的檔案路徑 C:\\apache-tomcat-7.0.47\\webapps\\CommonhelloWorldServlet \\upload 的目錄,結果獲取到的是 D:\eclipseWorkSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\CommonhelloWorldServlet ,並不是執行時的工程存放目錄,得到的反而是工作空間的專案存放路徑,我覺得應該是配置的問題,經過百度之後,果然得出猜想沒錯,步驟如下:

1、先在編輯器介面將現有 servlet 刪除,再雙擊旋轉 tomcat 7.0 版本新建 servlet,結果如下圖:


發現配置如下圖,解釋了為啥獲取到工作空間的路徑了:


修改如下:


執行程式碼,效果如下,正常了: