SSH2里怎么获取项目的绝对路径

时间:2022-04-23 17:51:18
dir=System.getProperty("user.dir");的结果是F:\java\JDK\eclipse
this.getClass().getResource("/").getPath();的结果是/E:/eclipse%20Workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/test/WEB-INF/classes/
相对来说第二句准确一点,第一完全不着边了,但是我想要项目的路径不知道怎么弄

11 个解决方案

#1


你那个是classpath
项目的路径是这样的:request.getSession().getServletContext().getRealPath("/");

#2


JSP页面获取路径:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="ctx" value="${pageContext.request.contextPath}" />

Class:

//getRealPath里面可选参数
System.out.println("项目的绝对路径:"+request.getSession().getServletContext().getRealPath(""));
System.out.println("相对路径:"+request.getRequestURI());

#3


public class Test {
public void test(){
System.out.println(this.getClass().getClassLoader().getResource("").getPath());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}

this.getClass().getClassLoader().getResource("").getPath()使用servlet,jsp

#4


该回复于2012-08-14 14:08:57被版主删除

#5


该回复于2012-08-14 14:09:24被版主删除

#6


String path = request.getContextPath();   
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  

这个就是项目的绝对路径,一般在Jsp页面中使用它来作为基准路径basePath

#7


学习了,一直没那样写过

#8


//获取应用的上文路径
org.apache.struts2.ServletActionContext.getServletContext().getContextPath();

/获取应用在硬盘上的根目录
org.apache.struts2.ServletActionContext.getServletContext().getRealPath("/");

#9


楼上的同学们解释够用了。

#10


request.getSession().getServletContext().getRealPath("/");

#11


String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";

#1


你那个是classpath
项目的路径是这样的:request.getSession().getServletContext().getRealPath("/");

#2


JSP页面获取路径:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="ctx" value="${pageContext.request.contextPath}" />

Class:

//getRealPath里面可选参数
System.out.println("项目的绝对路径:"+request.getSession().getServletContext().getRealPath(""));
System.out.println("相对路径:"+request.getRequestURI());

#3


public class Test {
public void test(){
System.out.println(this.getClass().getClassLoader().getResource("").getPath());
}
public static void main(String[] args) {
Test test = new Test();
test.test();
}
}

this.getClass().getClassLoader().getResource("").getPath()使用servlet,jsp

#4


该回复于2012-08-14 14:08:57被版主删除

#5


该回复于2012-08-14 14:09:24被版主删除

#6


String path = request.getContextPath();   
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  

这个就是项目的绝对路径,一般在Jsp页面中使用它来作为基准路径basePath

#7


学习了,一直没那样写过

#8


//获取应用的上文路径
org.apache.struts2.ServletActionContext.getServletContext().getContextPath();

/获取应用在硬盘上的根目录
org.apache.struts2.ServletActionContext.getServletContext().getRealPath("/");

#9


楼上的同学们解释够用了。

#10


request.getSession().getServletContext().getRealPath("/");

#11


String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";