`
toyota2006
  • 浏览: 552428 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

request得到相对路径与绝对路径,以及request.getRealPath("/")的替换方法

阅读更多
看到很多人都喜欢用
request.getContextPath()


那我也使用一下

equest.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() 

得到工程文件的实际物理路径,也就是绝对地址

在servlet或者struts中还可以这样:

this.getServletContext().getRealPath("/");
this.getServlet().getServletContext().getRealPath("/");

分享到:
评论

相关推荐

    Java路径问题汇总.pdf

    - `request.getSession().getServletContext().getRealPath("/")`则用于获取绝对路径。 ### 6. 类路径与工作目录 文档提到了系统属性`user.dir`,它表示当前Java进程的工作目录。可以通过`System.getProperty(...

    Java,JSP,Servlet获取当前工程路径(绝对路径)问题解析

    - 使用 `request.getContextPath()` 方法可以得到当前Web应用的上下文路径(Context Path)。例如: ```java String contextPath = request.getContextPath(); System.out.println(contextPath); // 输出:/TEST...

    jsp获取url路径的方法分析

    通过request对象可以访问与请求相关的各种信息,包括URL路径。 2. request对象的常用方法 - request.getScheme():返回请求使用的协议(例如“http”或“https”)。 - request.getServerName():返回服务器的主机...

    Servlet中的文件操作

    Servlet写文件的过程与读取文件类似,只是将`FileReader`和`BufferedReader`替换为`FileWriter`和`BufferedWriter`。你需要创建一个`FileWriter`实例,然后使用`write()`方法将数据写入文件。 ### 3. Servlet上传...

    jsp动态生成html 3种方法

    &lt;LINK href="../css.css" rel=stylesheet type=text/css&gt; &lt;/head&gt; &lt;td align="center"&gt;###title###&lt;/td&gt; &lt;/tr&gt; &lt;td align="center"&gt;author###author### &nbsp;&nbsp;&lt;/td&gt; &lt;/tr&gt; &lt;td&gt;###content###&lt;/...

    java使用uploadify批量上传文件

    在这个例子中,我们指定了SWF(Flash)文件路径、上传处理器URL,以及一些回调函数来处理上传成功或失败的情况。`multi`设置为`true`,表示开启批量上传功能。 为了保证上传的安全性,还需要考虑以下几点: 1. 文件...

    Excel数据操纵-jar包-jxl.jar

     String filePath=request.getRealPath("aaa.xls");  File myFilePath=new File(filePath);  if(!myFilePath.exists())  myFilePath.createNewFile();  FileWriter resultFile=new FileWriter(myFilePath);...

    jsp中Filter类实现过滤器功能

    3. **替换敏感词**:在`HttpReqWrapper`类中重写了`getParameter()`方法,该方法遍历`map`中的所有键值对,如果请求参数中包含键,则用对应的值(通常是星号)进行替换。 4. **销毁**:`destroy()`方法在容器卸载...

    jquery uploadify java版

    《jQuery Uploadify与Java结合实现文件上传详解》 在网页应用中,文件上传功能是必不可少的一部分,而jQuery Uploadify是一款非常流行的前端文件上传插件,它提供了丰富的自定义选项和友好的用户界面。本文将深入...

    根据指定网址,提供参数,返回图片数据

    此外,代码还展示了如何获取当前Web应用的根目录路径:`basePath = request.getSession().getServletContext().getRealPath("")`。这通常用于构建完整的文件系统路径。 ### 3. Servlet与HTTP请求/响应 在Web应用中...

    springMVC导出word模板的方法

    String templatePath = request.getServletContext().getRealPath("") + "/template/税源信息比对.docx"; // 设置文件名 String fileName = new String("税源信息比对".getBytes("gb2312"), "ISO8859-1") + "....

    velocity 例子和文档

    public Template handleRequest(HttpServletRequest request, HttpServletResponse response) { // ... 创建上下文,获取数据,合并模板并写入响应 ... } } ``` `hello.vm`模板放在Web应用的根目录下,可以包含...

    JAVA面试题从基础到高级篇.doc

    3. JSP通过request对象读取客户端请求,通过getAttribute()等方法访问CGI变量,使用getRealPath()获取真实路径。 4. Cookie用于客户端会话保持,Session用于服务器端会话保持。Cookie数据量小,Session数据量大,...

    java面试题[基础类].doc

    获取JSP文件路径:request.getRealPath("/path")。 4. Cookie和Session: - Cookie存储在客户端,用于跟踪用户状态;Session存储在服务器端,安全性较高。 - Session基于Cookie实现,若禁用Cookie,Session也会受...

    JSP生成静态页实践及其设计思想[转]

    1. 获取模板文件的路径,例如:`request.getRealPath("/") + "WEB-INF/templates/template.htm"`。 2. 读取模板文件内容,使用`FileInputStream`打开文件,读取字节,然后转换为字符串。 3. 使用字符串的`replaceAll...

    JAVA面试题集锦.pdf

    3. request对象读取客户端请求,通过request.getParameter()获取CGI变量,getRealPath()获取JSP真实路径。 4. Cookie用于持久化用户信息,Session用于跟踪用户会话。Cookie存储在客户端,Session存储在服务器端。 ...

    使用代码自动生成jsp页面

    - 使用`request.getRealPath("/")`获取服务器上特定文件的真实路径。 3. **读取模板文件**: - 使用`FileInputStream`读取服务器上的模板文件。 - 获取文件的长度,并根据长度创建字节数组,用于存储文件内容。 ...

    华为与IBM等公司--JAVA面试题大全.doc

    3. JSP通过request对象获取请求,通过request.getAttribute()访问CGI变量,`getRealPath()`获取真实路径。 4. Cookie存储客户端信息,Session存储服务器端会话数据。Cookie不安全,Session更安全,但会话过多消耗...

    Java基础知识面试题目

    - **字符串替换**:使用`replace`或`replaceAll`方法可以实现字符串的替换功能。 **3. 数据类型转换** - **字符转数字**:使用`Character.getNumericValue(char)`可以将字符类型的数字转换为数值;使用`Integer....

    java面试题大全--java基础,struts,spring,ejb等

    - 使用`request.getRealPath(path)`获取JSP文件的真实路径。 #### 4. Cookie和Session的作用与区别 - **Cookie**:存储在客户端的信息,用于跟踪用户状态。 - **Session**:服务器端维护的用户会话信息,更安全。 ...

Global site tag (gtag.js) - Google Analytics