SpringBoot 上传文件如何获取项目工程路径

时间:2022-03-05 09:38:15

上传文件时,需要将上传的文件存放于工程路径中,以便前端能够获取文件资源,那如何获取工程路径呢?

//获取 SpringBoot 工程中 static 的绝对路径
String serverpath= ResourceUtils.getURL("classpath:static").getPath(); //从路径字符串中取出工程路径
path=serverpath.replace("%20"," ").replace('/', '\\').substring(1);

SpringBoot 工程编译成功后将输出 target 文件夹,target 文件夹里保存 Java 类编译后的 class 文件以及客户端资源文件。

所以,客户端输入 URL 地址访问的资源文件,其实是从 target 文件夹中获取,而不是项目工程中。

如果将上传的文件存放于项目工程中,那么需要重新编译工程,才能将上传的文件存放于 target 文件夹,这样客户端才能正常访问。