springboot文件上传修改临时文件路径
·
1、配置:spring.servlet.multipart.location=/data/tmp
2、代码
@Configuration
public class MultipartConfig {
@Value("${spring.servlet.multipart.location}")
private String tmpLocation;
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
// 若没有该目录,则创建,此处使用了第三方插件的FileUtil,各位可以使用原生File实现该逻辑
if (!FileUtil.exist(tmpLocation)) {
FileUtil.mkdir(tmpLocation);
}
factory.setLocation(tmpLocation);
return factory.createMultipartConfig();
}
}
3、
通过上述两项配置可以实现spring boot 使用undertow容器上传文件时将/tmp/undertow*的临时目录切换至指定的目录下的效果。
但是,依然会在/tmp目录创建一个4k大小的undertow*的目录,不过上传时产生的临时目录不会再存放到/tmp/undertow*下了(可以在上传文件时实时观察/tmp/undertow*和/data/tmp的目录大小判断,上传途中/tmp/undertow*目录无任何变化,而/data/tmp目录一直在变大,当上传完成后/data/tmp大小恢复至0,说明被清理了)
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)