获取web项目的绝对路径的方法总结

一、用Jsp获取

 1、获取文件的绝对路径

String file="文件";(例如:data.mdb)

String path=application.getRealPath(file);

结果:

E:java_webworkspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsmyWebsite文件

2、获取文件的绝对路径

String p2=request.getRequestURI();

结果:

E:java_webworkspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsmyWebsite文件
3、获取当前jsp页面的路径

String p3=request.getContextPath();
结果:

/myWebsite/index.jsp

4、获取当前项目的路径

String p4=request.getServletPath();
结果:

/myWebsite

二、用Java类获取

1、获取Eclipse路径

String a1=System.getProperty("user.dir");

结果:

D:StudySystemJavaWeb3-eclipse-jee-indigo-win32eclipse

 

2、获取当前的classpath路径

String a2=类名.class.getResource("").toString();

String a3=DBConnection.class.getResource("/").toString();
String a4=DBConnection.class.getClassLoader().getResource("").toString();

String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();

打印出来分别是:

file:/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/com/site/db/

file:/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/
file:/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/
/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/

 

3、获取文件的绝对路径
如果要获取WebContent目录下的文件绝对路径怎么办?可以用下面的方法
String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
 int num=t.indexOf(".metadata");
 String path=t.substring(1,num).replace('/', '\')+"项目名\WebContent\文件";
结果是:

E:java_webworkspace项目名WebContent文件

 

三、用servlet获取

1、获取项目的绝对路径

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

结果:

E:java_webworkspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsmyWebsite

2、获取浏览器地址

request.getRequestURL()

结果:

http://localhost:8080/myWebsite/QuestionServlet

3、获取当前文件的绝对路径

request.getSession().getServletContext().getRealPath(request.getRequestURI())

结果:

E:java_webworkspace.metadata.pluginsorg.eclipse.wst.server.core mp0wtpwebappsmyWebsitemyWebsiteQuestionServlet