您的位置:首页 > 产品设计 > UI/UE

171219之从request获取各种路径总结

2017-12-19 15:06 246 查看
最常用的:request.getSession().getServletContext().getRealPath();

在servlet里用this.getServletContect().getRealPath()

在struts里用this.getServlet().getServletContext().getRealPath()

在Action里用ServletActionContext.getRequest().getRealPath();

以上三个获得都是当前运行文件在服务器上的绝对路径

常见用法:

request.getRealPath(“url”); // 虚拟目录映射为实际目录

request.getRealPath(“./”); // 网页所在的目录

request.getRealPath(“../”); // 网页所在目录的上一层目录

request.getContextPath(); // 应用的web目录的名称

一:获取Web项目的全路径

String strDirPath =

request.getSession().getServletContext().getRealPath(“/”);

以工程名为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

二:在类中得到路径

1:类的绝对路径:Class.class.getClass().getResource(“/”).getPath()

结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

2:得到工程的路径:System.getProperty(“user.dir”)

结果:D:\TEST

三:在Servlet中取得路径

1:得到工程目录:request.getSession().getServletContext().getRealPath(“”) 参数可具体到包名。

结果:E:\Tomcat\webapps\TEST

2:得到IE地址栏地址:request.getRequestURL()

结果:http://localhost:8080/TEST/test

3:得到相对地址:request.getRequestURI()

结果:/TEST/test

转自:http://blog.csdn.net/qq_26345875/article/details/51611540
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struts servlet