前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【SpringBoot】SpringBoot上传文件报:The temporary upload location ***is not valid

【SpringBoot】SpringBoot上传文件报:The temporary upload location ***is not valid

作者头像
用户5640963
发布2021-07-15 09:54:18
2.5K0
发布2021-07-15 09:54:18
举报
文章被收录于专栏:卯金刀GG

错误提示:The temporary upload location ***is not valid

错误原因:

在运行springboot时 ,长时间运行后报错 the temporary uplaod location *** is not valid 查过资料后发现是操作系统对‘/temp’下文件自动清理的原因。 在springboot项目启动后 系统会在‘/temp’目录下创建几个目录 用于上传文件。因此清理过‘/temp’下文件后无法上传。

解决办法:

1、 重启服务; (不推荐)

2、自己创建一个临时文件夹(不推荐,重启后不对应)

3、 改变临时文件的存储路径

代码语言:javascript
复制
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.servlet.MultipartConfigElement;
import java.io.File;

/**
 * @Author: Liu Yue
 * @Descripition:
 * @Date; Create in 2021/7/14 15:29
 **/
@Configuration
public class MultipartConfig{
    @Value("${hake.file.projectPathTmp}")
    private String projectPathTmp;
    /**
     *文件临时上传路径
     */
    @Bean
    MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        String location  = projectPathTmp; //指定一个固定的临时文件路径
        File tmpFile   =new File (location);
        if(!tmpFile.exists()){
            tmpFile.mkdirs();
        }
        factory.setLocation(location);
        return factory.createMultipartConfig();
    }
}

测试的时候,可以打断点,能看到临时文件再上传的时候存在,上传完成后,自动清除。

每天进步一点点!!!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档