java獲取項目目錄
㈠ java windows和linux獲取項目根目錄的方法一致嗎
java有個特性是跨平台性,所以其獲取項目根目錄的方法是一樣的。
request.getContextPath()方法就是是得到項目的名字,如果項目為根目錄,則得到一個"",即空的字條串。如果項目為abc,<%=request.getContextPath()%> 將得到abc,伺服器端的路徑則會自動加上,<a href="XXXX.jsp"> 是指當前路徑下的這個xxx.jsp頁面,有時候也可以在head里設置html:base來解決路徑的問題,不多用的最多的還是request.getContextPath。
㈡ java 獲取項目本地路徑
因為你的項目的執行文件文件就在tomcat路徑下呀,你可以把tomcat的項目路徑指定為你項目的路徑,這樣運行文件就是在你的項目下了,獲取的路徑就是你真正項目的路徑了
㈢ java獲取項目根目錄 像 D:/workspaces/netynteo/webapp/netynteo/這樣
Stringurl=Test.class.getResource("").toString();
System.out.println(url.substring(6,url.length()));
㈣ java取得項目根目錄問題。。謝謝!
metadata 是JAVA項目名稱,獲取到的根目錄就是該項目的根目錄啊。
㈤ java如何獲取項目的工作目錄
import java.io.File;
import java.net.URLDecoder;
public class ProjectPath {
private static String rootPath = "";
private ProjectPath() {
init();
}
@SuppressWarnings("deprecation")
private static void init() {
String path = ProjectPath.class.getResource("ProjectPath.class")
.toString();
path = URLDecoder.decode(path);
path.replaceAll("\\\\", "/");
int index = path.indexOf("WEB-INF");
if (index == -1) {
index = path.indexOf("bin");
}
if (index == -1) {
index = path.indexOf("lib");
}
if (index == -1) {
int index2 = path.indexOf("jar!");
if (index2 != -1) {
path = path.substring(0, index2);
System.out.println(path);
System.out.println(File.separator);
index = path.lastIndexOf("/");
System.out.println(index);
}
}
path = path.substring(0, index);
if (path.startsWith("jar")) {
path = path.substring(9);
}
if (path.startsWith("file")) {
path = path.substring(5);
}
if (path.endsWith("/") || path.endsWith("\\")) {
path = path.substring(0, path.length() - 1);
}
// linux環境下第一個/是需要的
String os = System.getProperty("os.name").toLowerCase();
if (os.startsWith("win")) {
path = path.substring(1);
}
rootPath = path;
}
/**
* 獲取應用的根目錄,路徑分隔符為/,路徑結尾無/
*
* @return
*/
public static String getProjectPath() {
if ("".equals(rootPath)) {
init();
}
return rootPath;
}
}
㈥ java 怎麼獲取web根目錄
以工程名為TEST為例:
(1)得到包含工程名的當前頁面全路徑:request.getRequestURI()
結果:/TEST/test.jsp
(2)得到工程名:request.getContextPath()
結果:/TEST
(3)得到當前頁面所在目錄下全名稱:request.getServletPath()
結果:如果頁面在jsp目錄下 /TEST/jsp/test.jsp
(4)得到頁面所在伺服器的全路徑:application.getRealPath("頁面.jsp")
結果:D:/resin/webapps/TEST/test.jsp
(5)得到頁面所在伺服器的絕對路徑:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
結果:D:/resin/webapps/TEST
2.在類中取得路徑:
(1)類的絕對路徑:String u=Class.class.getClass().getResource("/").getPath()
結果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路徑:System.getProperty("user.dir")
結果:D:/TEST
3.在Servlet中取得路徑:
(1)得到工程目錄:request.getSession().getServletContext().getRealPath("") 參數可具體到包名。
結果:E:/Tomcat/webapps/TEST
(2)得到IE地址欄地址:request.getRequestURL()
結果:http://localhost:8080/TEST/test
(3)得到相對地址:request.getRequestURI()
結果:/TEST/test
㈦ java項目目錄(src/main/java; src/main/resources)怎麼建立
eclipse新建maven webapp後無法添加src/main/java和src/main/test
㈧ 通過java獲取當前項目路徑
getClass().getResource() 方法獲得相對路徑( 此方法在jar包中無效。返回的內容最後包含/)
例如 項目在/D:/workspace/MainStream/Test
在javaProject中,getClass().getResource("/").getFile().toString() 返回:/D:/workspace/MainStream/Test/bin/
publicStringgetCurrentPath(){
//取得根目錄路徑
StringrootPath=getClass().getResource("/").getFile().toString();
//當前目錄路徑
StringcurrentPath1=getClass().getResource(".").getFile().toString();
StringcurrentPath2=getClass().getResource("").getFile().toString();
//當前目錄的上級目錄路徑
StringparentPath=getClass().getResource("../").getFile().toString();
returnrootPath;
}
㈨ 如何使用java代碼獲取eclipse打開項目的那個項目路徑,而不是tomcat項目路
一定是你在創建了 工程之後,修改了IDE 上的項目名。
其實在建立web項目的時候。內部還有一個操作就是 根據你的項目名 建立一個web伺服器上的訪問名(通過瀏覽器訪問時。)
那在你單方面修改了項目名之後(IDE上修改)。
後面的web伺服器上的名字,依然是你第一次創建時的名字。不會同步更新。
解決方法就是右鍵項目找到myeclipse(忘記是不是這個了,或者是edit什麼的) 選項 然後找到web。修改那個名字跟當前項目一致,重新部署就好了。
㈩ java 項目如何獲取項目所在的物理根路徑
request.getSession().getServletContext().getRealPath("/")