您的位置:首页 > 其它

关于在Servlet的路径问题

2016-06-06 00:00 295 查看
摘要: 在Servlet中,getContextPath、getServletPath、getRealPath、getResourcePaths的区别

[code=language-java]1. getContextPath

获取当前工程的相对路径(也可以说是当前的工程名:/当前工程名):

[code=language-java]调用:

1、request.getSession().getServletContext().getContextPath("\")
2、request.getServletContext().getContextPath("/")
3、request.getContextPath("/")
上面三个是等价的,他们都表示获取当前工程的名称,是一个相对路径。
如果当前项目工程为:TestDemo,那么getContextPath返回的是/TestDemo


[code=language-java]2、request.getServletPath()

获取当前浏览器请求的路径。

如果你的浏览器请求地址为:

[code=language-java]http://localhost:8080/SubSys/Servelt/TestServelt

那么返回的就应该是:

SubSys/Servelt/TestServelt

[code=language-java]调用:
request.getServletPath("/")


[code=plain]3、getRealPath()

获取的当前工程的绝对路径。即一个完整的路径。如:C:\test\..\TestDemo

[code=language-java]调用:
1、request.getServletContext().getRealPath("/")
2、request.getSession().getServletContext().getResourcePaths("/")
3、request.getRealPath("/")【注:此方法已不推荐使用,可以使用上面任意一种】


[code=language-java]4、getResourcePaths()

获取当前过程根目录下的所有的文件何和目录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: