Springboot项目下载 上传路径整理

395 阅读1分钟

以前写SSM项目的时候,项目结构是webapp,所以在代码里./就是相对路径。 但是在resources目录下,这样的写法是

###resources目录项目
######1. **./**表示什么

image.png

image.png
实验表明, 在resources目录结构下./表示项目源码根目录

######2. **request.getServletContext().getContextPath()**表示什么

image.png
image.png
这里我们可以看出它输出的是空,那么我们用这个路径,下载个东西看下它会在哪里
image.png
image.png
它放在了磁盘根目录下了(我的项目在C盘的code目录里)

######3. WebUtils.getRealPath(servletContext, path)

image.png
image.png
会发现有个'点'目录,所以我们path里面就别要点了
image.png
image.png
######4. request.getServletContext().getRealPath("");
image.png
image.png
image.png
image.png

######5. 自定义目录 在application.yml里添加

web:
  upload-path: ./admin-server/src/main/resources/static/download/
...
spring:
  resources:
    static-locations: classpath:/resources/,classpath:/static/,file:${web.upload-path}

在项目里

@Value("${web.upload-path}")
    private String path;

就可以做指定目录下载上传了。