【www.bbyears.com--js教程】
//在Servlet与JSP中取得当前文件所在的相对路径与绝对路径
JSP中
根目录所对应的绝对路径:request.getRequestURI()
文件的绝对路径 :application.getRealPath(request.getRequestURI());
当前web应用的绝对路径 :application.getRealPath("/");
取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent()
3.2 Servlet中获得当前应用的相对路径和绝对路径
根目录所对应的绝对路径:request.getServletPath();
文件的绝对路径 :request.getSession().getServletContext().getRealPath
(request.getRequestURI())
当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
代码如下
out.println("根目录所对应的绝对路径:" + request.getRequestURI() + "
");
String strPathFile = application.getRealPath(request.getRequestURI());
out.println("文件的绝对路径:" + strPathFile+ "
");
out.println(application.getRealPath(request.getRequestURI()));
String strDirPath = new File(application.getRealPath(request.getRequestURI())).getParent();
out.println("目录的绝对路径:" + strDirPath + "
");
程序
代码如下String classPath = this.getClass().getClassLoader().getResource("/").getPath();
try {
classPath =URLDecoder.decode(classPath, "gb2312");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
例子
代码如下当前WEB应用的物理路径:<%=application.getRealPath("/")%>
当前你求请的JSP文件的物理路径:<%=application.getRealPath(request.getRequestURI())%>
<%
String path=application.getRealPath(request.getRequestURI());
String dir=new File(path).getParent();
out.println("当前JSP文件所在目录的物理路径"+dir+"");
String realPath1 = "http://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath()+request.getServletPath().substring(0,request.getServletPath().lastIndexOf("/")+1);
out.println("web URL 路径:"+realPath1);
%>
servlet中获得项目绝对路径
String filePath=this.getServletConfig().getServletContext().getRealPath("/");
根目录所对应的绝对路径:request.getServletPath();
文件的绝对路径 :request.getSession().getServletContext().getRealPath(request.getRequestURI())
当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
ServletContext对象获得几种方式:
代码如下Javax.servlet.http.HttpSession.getServletContext()
Javax.servlet.jsp.PageContext.getServletContext()
Javax.servlet.ServletConfig.getServletContext()
文件的绝对路径 :request.getSession().getServletContext().getRealPath(request.getRequestURI())
当前web应用的绝对路径 :servletConfig.getServletContext().getRealPath("/");
例
//JSP中的application对象就是Servlet中的ServerContext,所以在Servlet中是如此获得
//import java.io.File;
System.out.println("根目录所对应的绝对路径:" + request.getServletPath() + "
");
String strPathFile = request.getSession().getServletContext().getRealPath(request.getRequestURI());
System.out.println("文件的绝对路径:" + strPathFile + "
");
String strDirPath = new File(request.getSession().getServletContext().getRealPath(request.getRequestURI())).getParent();
System.out.println("目录的绝对路径:" + strDirPath + "
");
文件名不能包括以下字符:/:*?"<>|
获取Web项目的全路径
String strDirPath = getServletContext().getRealPath("/");