以前写SSM项目的时候,项目结构是webapp,所以在代码里./就是相对路径。
但是在resources目录下,这样的写法是
resources目录项目
1. ./表示什么
![img_ec96defacece484692ae4099c4556ff6.png](https://i-blog.csdnimg.cn/blog_migrate/66a4ae7cfb652a33d2df73479794aa7e.png)
image.png
![img_d7d35f50fa423ee2f1a499a7d90c4147.png](https://i-blog.csdnimg.cn/blog_migrate/df55776f388840d845902e391c924a2b.png)
image.png
实验表明, 在resources目录结构下
./
表示项目源码根目录
2. request.getServletContext().getContextPath()表示什么
![img_154de7dc57631efcec563979b15311d2.png](https://i-blog.csdnimg.cn/blog_migrate/a09526e0b5d89ac25e07f7d362e42ba8.png)
image.png
![img_f18c63622a442da5109ca00cf601270a.png](https://i-blog.csdnimg.cn/blog_migrate/76f87b531d7a7a5cf809365861c09c23.png)
image.png
![img_9f5ab1cd5798903500ccbd17e7241a6f.png](https://i-blog.csdnimg.cn/blog_migrate/c8440048cba81528b2d920812a0b8207.png)
image.png
![img_7ed423e9527393db3450806b7d7f09a8.png](https://i-blog.csdnimg.cn/blog_migrate/f0b797157082e6c97f9543299088a228.png)
image.png
它放在了磁盘根目录下了(我的项目在C盘的code目录里)
3. WebUtils.getRealPath(servletContext, path)
![img_bc27a923060b48477a1ae023d3f761ac.png](https://i-blog.csdnimg.cn/blog_migrate/fac4cc06690807033da3abbbe31c7a0d.png)
image.png
![img_c877d645d4facd36b004e27b75ddcae0.png](https://i-blog.csdnimg.cn/blog_migrate/ba24edbaf6a5d29f379a7241dbcfdf2f.png)
image.png
会发现有个'点'目录,所以我们path里面就别要点了
![img_95cd7358520647d2557468116a679cb8.png](https://i-blog.csdnimg.cn/blog_migrate/3e2d37fc0f8628e15c081d2d83ee1a28.png)
image.png
![img_7298f19138bb5e4d81af4587ea70f358.png](https://i-blog.csdnimg.cn/blog_migrate/fd31333614839d0c18e3c8fa2fac1f25.png)
image.png
4. request.getServletContext().getRealPath("");
![img_1142192274e4c793252ad8ab4c4ad1bc.png](https://i-blog.csdnimg.cn/blog_migrate/69fce7465e653c55135e3deb88337a2e.png)
image.png
![img_642686006534a00871a73b05b1316f53.png](https://i-blog.csdnimg.cn/blog_migrate/194ca86db3614fdb1c8e5d37c9c15844.png)
image.png
![img_fb26003decd5ed8abdd2f3d6f8a71683.png](https://i-blog.csdnimg.cn/blog_migrate/4f56045d508b16fba5973a3c62503b48.png)
image.png
![img_10754cc2bb331af6fd68eeb8af25c91f.png](https://i-blog.csdnimg.cn/blog_migrate/68ffa3fc04bce7f027accebb7ced9022.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;
就可以做指定目录下载上传了。