假定你的工程名称为projects,你在浏览器中输入请求路径:
http://127.0.0.1:8080/projects/pages/newForm.jsp
则执行下面向行代码后打印出如下结果:
1、 System.out.println(request.getContextPath());
打印结果:/projects
2、System.out.println(request.getServletPath());
打印结果:/pages/newForm.jsp
3、 System.out.println(request.getRequestURI());
打印结果:/projects/pages/newForm.jsp
4、 System.out.println(request.getRealPath("/"));
JSP servlet API提供了getRealPath(path)方法,返回给定虚拟路径的真实路径,如果转换错误,则返回null。
打印结果:C:\Tomcat5.0\webapps\projects\test
想不清楚的代码或原理,动手试验一般会找到答案!!!
自己试验了一下:
http://localhost:8080/gd/index.do?logicName=HelloWorldAction&forwardJsp=index
String ss = req.getServletPath();
System.out.println(ss);
systemName = ss.split("/")[1];
System.out.println(systemName);
for(int i=0;i<ss.split("/").length;i++){
System.out.println("ss.split(\"/\")["+i+"]="+ss.split("/")[i]);
}
输出:
/gd/index.do
gd
ss.split("/")[0]=
ss.split("/")[1]=gd
ss.split("/")[2]=index.do
分享到:
相关推荐
### Request中getContextPath、getServletPath、getRequestURI、request.getRealPath的区别 #### 一、概述 在Java Web开发中,对于HTTP请求处理时经常需要用到`HttpServletRequest`对象的方法来获取客户端请求的...
- 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` 总的来说,正确理解和使用...
正确地使用`request.getContextPath()`、`request.getServletPath()`、`request.getServletContext().getRealPath("/")`等方法可以帮助我们更好地管理Web应用中的文件路径问题。希望本文能对你有所帮助,在实际工作...
- 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` ServletContext对象...
out.println("getServletPath: " + request.getServletPath()); out.println(" "); %> ``` #### 四、其他获取路径的方法 除了上述通过`HttpServletRequest`获取路径的方式外,还可以在类中或Servlet中获取...
- 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())`。 - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")`。 **最佳实践** 在...
- 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` `ServletContext`对象...
- 文件绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - 当前Web应用绝对路径:`servletConfig.getServletContext().getRealPath("/")` 4. **最佳实践** - 避免...
可以使用 request.getServletPath() 获取当前应用的相对路径,使用 request.getSession().getServletContext().getRealPath(request.getRequestURI()) 获取当前文件的绝对路径,使用 servletConfig....
- **文件的绝对路径**: 使用`request.getSession().getServletContext().getRealPath(request.getRequestURI())`。 - **当前Web应用的绝对路径**: 使用`servletConfig.getServletContext().getRealPath("/")`。 - **...
- **文件的绝对路径**:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - **当前Web应用的绝对路径**:`servletConfig.getServletContext().getRealPath("/")` - **...
- **文件的绝对路径**:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - **当前web应用的绝对路径**:`servletConfig.getServletContext().getRealPath("/")` 通过以上介绍...
- 使用 `new java.io.File(application.getRealPath(request.getRequestURI())).getParent()` 可以得到页面所在服务器的绝对路径,如 `D:\resin\webapps\TEST`。 3. 在类中获取路径的方法: - 获取类的绝对路径:...
- 示例:通过先调用`request.getRequestURI()`获取页面的全路径,再通过`new java.io.File(application.getRealPath(request.getRequestURI())).getParent()`获取其父路径,如`D:\resin\webapps\TEST`。 #### Java...
- **Servlet中的路径获取**: 在Servlet中,可以使用`HttpServletRequest`的`getServletPath()`获取请求的虚拟路径,然后结合`getRealPath()`得到物理路径。 相对路径和绝对路径的选择取决于你需要操作的文件或目录...
String absPath = new java.io.File(application.getRealPath(request.getRequestURI())).getParent(); System.out.println(absPath); // 输出:D:\resin\webapps\TEST ``` #### 二、在Java类中获取路径 1. **...
absPath = new java.io.File(application.getRealPath(request.getRequestURI())).getParent(); ``` 输出如 `D:\resin\webapps\TEST`。 ### 类文件中的路径获取 在Java类文件中,可以使用以下方法来获取路径:...
#### (2) 获取上下文路径:`request.getContextPath()` 这将返回当前Web应用程序的上下文路径,即`http://example.com/TEST/`中的`/TEST`部分。这对于构建相对路径或在不同的应用之间共享资源时非常有用。 #### (3...
在JSP中,`request.getRequestURI()`方法可以返回从上下文根目录到资源的路径,包括任何查询字符串之前的路径。例如,如果你的JSP页面位于`/TEST`项目中,调用此方法将会返回`/TEST/test.jsp`。这个路径主要用于定位...