关于spring:Springboot文件上传报javaniofileNoSuchFileException-tmpundertow

明天测试环境有个问题,文件上传报错了。java.nio.file.NoSuchFileException: /tmp/undertow
查了下,是长期文件目录被删除了,做一下笔记。

首先是长期文件目录
windows C:\Users{username}\AppData\Local\Temp\
Linux /tmp

Springboot在上传文件时,会把文件存在这两个门路上。以window为例子,在代码里打断点。

前端点上传时进断点,这时去长期文件夹看。

呈现了undertow结尾,upload结尾的临时文件,这个文件在申请完结后就被删除了。
如果你把长期目录删了,再上传文件,就会报题目的谬误。

这时要么重启我的项目,要么在springboot上做配置,该配置转载于
https://my.oschina.net/648885…

@Configuration
public class MultipartConfig {

   @Value("${配置文件 中指定一个目录}")
   private String locationTemp;

   @Bean
   MultipartConfigElement multipartConfigElement() {
      MultipartConfigFactory factory = new MultipartConfigFactory();
      File tmpFile = new File(locationTemp);
      if (!tmpFile.exists()) {
         tmpFile.mkdirs();
      }
      factory.setLocation(locationTemp);
      return factory.createMultipartConfig();
   }

}

或者

spring.servlet.multipart.location=/tmp/undertow

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理