我正嘗試在java web應用程序中獲取項目上下文路徑。在java web應用程序中獲取上下文路徑
我的工作室位於D:\ GED \ WSysGED,我想獲得該路徑。
我發現有兩種方法可以使用這個指令。
String path= System.getProperty("user.dir");
System.out.println(path);
但代碼返回d:\蝕-JEE-luna的-R-的win32 \蝕 即其中蝕可執行文件的位置。
的第二種方法是使用一個servlet
我創建的一個跟隨此 tutorial
public class ContextPathServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
ServletContext servletContext = getServletContext();
String contextPath = servletContext.getRealPath("/");
PrintWriter out = response.getWriter();
out.println("<br/>File system context path (in TestServlet): " + contextPath);
}
}
但它示出C:\用戶\涓\ SysGED.metadata.plugins \有機eclipse.wst.server.core \ tmp6 \ wtpwebapps \ WSysGED
什麼是獲得項目路徑的正確方法?
在此先感謝您的時間和aswers。
第二種方法是正確的。返回的路徑是您的應用程序服務器的部署路徑。 Java EE中不存在項目路徑。 – home 2014-09-24 13:55:04
好的,你的答案,只是一件事。路徑C:\ Users \ Juan \ SysGED.metadata.plugins \ org.eclipse.wst.server.core \ tmp6 \ wtpwebapps \ WSysGED 是靜態的,或者部署有時會更改路徑? @home – 2014-09-24 14:09:43
它會根據您的應用程序服務器而變化。請告訴我們爲什麼您需要訪問該路徑 - 其他解決方案可用? – home 2014-09-24 14:22:49