`
springboot框架
  • 浏览: 9469 次
文章分类
社区版块
存档分类
最新评论

Spring Boot内嵌tomcat关于getServletContext().getRealPath获取得到临时路径的问题

 
阅读更多

问题:

  • 使用getServletContext().getRealPath()得到的是临时文件的路径。
  • 每次重启服务,这个临时文件的路径还会变更。
  • 类似下面这种路径:

在这里插入图片描述

解决措施:

  • 在idea的启动配置里面配置工作区。

在这里插入图片描述

  • 在工作区下建立public文件夹。

  • 问题解决。

原理解释:

  • 源码位置:org\springframework\boot\web\servlet\server\DocumentRoot.java
  • SpringBoot启动后,默认会把commonDocRoot设置成这三个目录(java项目 www.fhadmin.org)。

commonDocRoot
在这里插入图片描述

  • 如果没有就会设置成临时位置。
  • 注意:这些目录都是在工作区下找的,如果没有设置工作区,肯定也是找不到的。
  • 配置好工作区,添加了public文件夹后,就能正常获取路径了。
  • 文件存储成功。

 

在这里插入图片描述

分享到:
评论

相关推荐

    Request中getContextPath、getServletPath、getRequestURI、request.getRealPath的区别.doc

    ### Request中getContextPath、getServletPath、getRequestURI、request.getRealPath的区别 #### 一、概述 ...其中`getContextPath()`, ...开发者应当根据实际需求选择合适的方法来获取路径信息,以满足不同场景的需求。

    getServletContext()空指针异常的原因

    getServletContext()空指针异常的原因getServletContext()空指针异常的原因getServletContext()空指针异常的原因getServletContext()空指针异常的原因getServletContext()空指针异常的原因

    JAVA获取各种路径总结

    #### JSP中获取路径 1. **获取当前应用的相对路径与绝对路径** - **根目录所对应的绝对路径** - 方法:`request.getRequestURI()` - `request.getRequestURI()` 返回客户端请求的资源的相对路径(相对于当前上...

    JAVA中获取各种路径

    通过调用`getServletContext().getRealPath()`可以获取服务器上文件或目录的实际物理路径,如`D:\resin\webapps\TEST\test.jsp`,这对于读取文件或进行文件系统操作非常必要。 #### (5) 获取页面的父目录绝对路径:...

    在JAVA文件中获取该项目的相对路径.doc

    在 Servlet 中,可以使用 request.getServletPath() 获取当前文件的绝对路径,然后使用 request.getSession().getServletContext().getRealPath(request.getRequestURI()) 获取当前文件的绝对路径。同时,也可以使用...

    JAVA获取项目路径.doc

    下面给出一个简单的示例,展示如何在Java程序中使用 `System.getProperty()` 来获取路径: ```java public class PathExample { public static void main(String[] args) { String currentDir = System....

    java绝对路径和相对路径

    1. **通过`HttpServletRequest`对象获取路径**: - 使用`request.getRealPath("/")`:这将返回Web应用的根目录的绝对路径。 - 示例:`C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\strutsTest`...

    java中相对路径与绝对路径的问题

    此外,我们还可以使用 `request.getSession().getServletContext().getRealPath(request.getRequestURI())` 来获取文档的绝对路径,使用 `servletConfig.getServletContext().getRealPath("/")` 来获取当前 web 实际...

    从HttpServletRequest获取各种路径总结

    除了上述通过`HttpServletRequest`获取路径的方式外,还可以在类中或Servlet中获取路径信息: ##### 在类中获取路径 - **类的绝对路径**:`Class.class.getClass().getResource("/").getPath()` - **获取工程的...

    java开发中的路径问题

    在Java开发中,路径问题是一个常见且重要的主题,特别是在Servlet和JSP的上下文中。路径主要分为两种类型:相对路径和绝对路径。 **1. 相对路径与绝对路径** - **相对路径**:它是相对于某个基准目录的路径。例如...

    得到文件真实路径

    4. **在JSP中获取路径** - 当前应用的根目录绝对路径:`request.getRequestURI()` - 文件的绝对路径:`application.getRealPath(request.getRequestURI())` - 当前Web应用的绝对路径:`application.getRealPath(...

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

    正确地使用`request.getContextPath()`、`request.getServletPath()`、`request.getServletContext().getRealPath("/")`等方法可以帮助我们更好地管理Web应用中的文件路径问题。希望本文能对你有所帮助,在实际工作...

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

    可以使用 request.getServletPath() 获取当前应用的相对路径,使用 request.getSession().getServletContext().getRealPath(request.getRequestURI()) 获取当前文件的绝对路径,使用 servletConfig....

    java获取路径的各种方法

    在Java编程中,获取路径是常见的操作,尤其在处理文件、资源或Web应用程序时。本文将详细介绍Java中获取路径的几种方法,以及相对路径和绝对路径的基本概念。 首先,理解绝对路径和相对路径的概念至关重要。绝对...

    Struts Updownload 源码

    String realPath=ServletActionContext.getServletContext().getRealPath("/"+this.getPath()+"/"+fileName); System.out.println(realPath); return ServletActionContext.getServletContext()....

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

    ### JAVA类、JSP与Servlet获取工程路径方法详解 #### 概述 在Java Web开发过程中,经常需要获取...此外,在不同服务器环境下(如Tomcat、Resin等),获取路径的方式可能略有差异,但上述方法基本适用于大多数情况。

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

    - 在JSP中,可以使用以下方法获取路径: - 当前请求的绝对路径:`request.getRequestURI()` - 文件的绝对路径:`application.getRealPath(request.getRequestURI())` - Web应用的绝对路径:`application....

    java获取路径

    1. **得到工程目录**:`request.getSession().getServletContext().getRealPath("")`,返回的是应用的根目录的绝对路径,如`E:\Tomcat\webapps\TEST`。 2. **得到IE地址栏地址**:`request.getRequestURL()`,返回...

    jsp_servlet路径问题

    ### JSP/Servlet中的路径问题详解 #### 一、路径的基本概念 在JSP和Servlet技术中,理解和处理路径是非常重要的。路径可以分为绝对路径和相对路径两种。 **1. 绝对路径** - **定义**:绝对路径是指文件或目录在...

Global site tag (gtag.js) - Google Analytics