`
岁月如歌
  • 浏览: 107070 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

通过request.getContextPath获取绝对路径

    博客分类:
  • java
阅读更多

<%=request.getContextPath()%>是解决相对路径的问题,可返回站点的根路径。

<a href="<%=request.getContextPath()%>/XXX.jsp"> //这样获得的是绝对路径

<a href="XXX.jsp"> //这样获得的是相对路径

<a href="<%=request.getContextPath()%>/XXXX.jsp"> 能够更有效的防治连接的失效。

request.getContextPath()得到的是项目的名字,如果项目为根目录,则得到一个"",即空的字条串,
如果项目为dzjc, <%=request.getContextPath()% >/ 将得到dzjc/,服务器端的路径则会自动加上,
<a href="XXX.jsp"> 应该就是指当前路径下的这个xxx.jsp页面,有时候也可以在head里设置html:base
来解决路径的问题,不过用的最多的还是request.getContextPath。

用EL来表示相同功能的EL为:${pageContext.request.getContextPath()}

request.getScheme();
返回的协议名称,默认是http

request.getServerName()
返回的是你浏览器中显示的主机名

getServerPort()
获取服务器端口号

如果想得到工程文件的实际物理路径,可通过:<%=request.getRealPath("/")%>,这样页面就会输出:d:/web

 

现在request.getRealPath("") 这个方法已经不推荐使用了
可以使用
ServletContext.getRealPath(java.lang.String) instead. request.getSession().getServletContext().getRealPath() 得到工程文件的实际物理路径,也就是绝对地址

 

简便用法:

String path=request.getContextPath();//path = /oa

request.setAttribute("path", path);

在页面中应用(EL) ${path}/images/xx.jpg(绝对定位:oa/images/xx.jpg)

可以解决复杂的相对路径定位失败的问题。

分享到:
评论

相关推荐

    java中相对路径,绝对路径问题总结.doc

    - 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` 总的来说,正确理解和使用...

    web开发中获得绝对路径的方法

    为了获取绝对路径,还需要结合其他方法,如`request.getScheme()`和`request.getServerName()`等。 ```java String requestUri = request.getRequestURI(); String absolutePath = scheme + "://" + serverName + ...

    获取项目的相对路径和绝对路径

    ### 三、获取绝对路径 #### 3.1 使用`request.getRealPath("/")` `request.getRealPath("/")`方法可以获取Web应用在服务器上的物理路径。这在处理文件系统中的文件路径时非常有用,比如读取或写入服务器上的文件。...

    从HttpServletRequest获取各种路径总结

    - **类的绝对路径**:`Class.class.getClass().getResource("/").getPath()` - **获取工程的路径**:`System.getProperty("user.dir")` ##### 在Servlet中获取路径 - **获取工程目录**:`request.getSession()....

    JAVA获取项目路径.doc

    5. **获取页面所在服务器的绝对路径**: ```java absPath = new java.io.File(application.getRealPath(request.getRequestURI())).getParent(); ``` 输出如 `D:\resin\webapps\TEST`。 ### 类文件中的路径...

    jsp中获得路径的两种方法和获得url路径的方法(推荐).docx

    2. **绝对路径**:为了确保链接的稳定性和正确性,开发者通常使用绝对路径。在JSP中,我们可以使用`request.getContextPath()`方法来获取当前应用的上下文路径,即项目的根路径。例如,`&lt;a href="&lt;%=request....

    Java相对路径绝对路径总结

    - **根目录所对应的绝对路径**: 可以通过`request.getRequestURI()`获取。 - **文件的绝对路径**: 使用`application.getRealPath(request.getRequestURI())`。 - **当前Web应用的绝对路径**: 使用`application....

    Java开发绝对和相对路径问题

    可以使用 request.getRequestURI() 获取当前应用的相对路径,使用 application.getRealPath(request.getRequestURI()) 获取当前文件的绝对路径,使用 application.getRealPath("/") 获取当前 Web 应用的绝对路径。...

    JAVA中获取各种路径

    通过组合使用`application.getRealPath()`和`new File().getParent()`可以得到文件的父目录绝对路径,例如`D:\resin\webapps\TEST`。 ### 2. 类路径的获取 #### (1) 获取类的资源路径:`Class.class.getClass()....

    得到文件真实路径

    - 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` ServletContext对象...

    java(Web)中相对路径,绝对路径问题总结

    - **文件的绝对路径**:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - **当前web应用的绝对路径**:`servletConfig.getServletContext().getRealPath("/")` 通过以上介绍...

    java Web 中相对路径绝对路径问题总结

    为了动态获取当前Web应用的上下文路径,可以利用`&lt;%=request.getContextPath()%&gt;`表达式。 JavaScript代码同样需要考虑上下文路径,特别是在处理表单提交或AJAX请求时,确保路径正确无误是必要的。 ### 三、JSP/...

    JAVA开发中相对路径汇编.pdf

    - 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())`。 - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")`。 **最佳实践** 在...

    JAVA类,JSP,Servlet获取工程路径.txt

    在Java Web开发过程中,经常需要获取项目的根目录或某个特定资源文件的绝对路径。这些路径信息对于加载资源文件、处理文件上传下载等功能至关重要。本文将详细介绍在Eclipse环境中通过JSP、Servlet以及Java类获取...

    java获取路径

    1. **类的绝对路径**:通过`Class.class.getClass().getResource("/")`,然后调用`getPath()`来获取类文件所在的绝对路径。例如,返回`/D:/TEST/WebRoot/WEB-INF/classes/pack/`。 2. **得到工程的路径**:使用`...

    学习JAVA开发中相对路径.pdf

    - 文件的绝对路径:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - 当前Web应用的绝对路径:`servletConfig.getServletContext().getRealPath("/")` `ServletContext`对象...

    Servlet中的相对路径和绝对路径归纳

    需要注意的是,如果要使用绝对路径,可以使用 `getContextPath()` 方法来获取应用的根路径。 2. web.xml 中的路径 在 web.xml 文件中,`&lt;servlet-mapping&gt;` 中的 `&lt;url-pattern&gt;` 标记中只能使用绝对路径,必须以 ...

    基于从request获取各种路径的方法介绍

    - `request.getSession().getServletContext().getRealPath("/")` 可以获取到Web应用的根目录的绝对路径。 - `this.getServletContext().getRealPath("")` 在servlet中使用,与上述方法类似,需要传入具体的包名...

    jsp_servlet路径问题

    - **文件的绝对路径**:`request.getSession().getServletContext().getRealPath(request.getRequestURI())` - **当前Web应用的绝对路径**:`servletConfig.getServletContext().getRealPath("/")` - **...

Global site tag (gtag.js) - Google Analytics