JavaWeb项目如何获取文件路径?
一、用servlet获取
1、获取项目的绝对路径
request.getSession().getServletContext().getRealPath("")
2、获取浏览器地址
request.getRequestURL()
3、获取当前文件的绝对路径
request.getSession().getServletContext().getRealPath(request.getRequestURI())
3个结果分别如下:
二、用Jsp获取
1、获取文件的绝对路径
<body>
String file = "../WEB-INF/test.pfx";
String path1 = application.getRealPath(file);
<%=path1 %>
</body>
结果:(index.jsp放在WebContent下)
2、获取访问的servlet路径
String p2=request.getRequestURI();
结果:
3、获取当前jsp页面的访问路径
String p3=request.getContextPath();
结果:
4、获取当前页面的路径
String p4=request.getServletPath();
结果:
三、用Java类获取
1、获取Eclipse路径
String path=System.getProperty("user.dir");
结果:
2、获取当前的classpath路径
String path1=Test4.class.getResource("").toString();
String path2=Test4.class.getResource("/").toString();
String path3=Test4.class.getClassLoader().getResource("").toString();
String path4=Thread.currentThread().getContextClassLoader().getResource("").getPath();
打印出来分别是:
3、获取文件的绝对路径
如果要获取WebContent目录下的文件绝对路径怎么办?可以用下面的方法
String t = Thread.currentThread().getContextClassLoader()
.getResource("").getPath();
System.out.println(t);