MutipartFile作为文件上传使用的时候,首先会在内存或者磁盘中生成一个temp文件,存储的方式取决于最大内存大小,这个就不赘述了,Springboot默认使用的是StandardMultipartFile ,
MultipartFile有两个实现类,还有一个是CommonsMultipartResolver,这个类提供了更加多的方法,可以拿到FileItem 包括拿到temp文件的文件路径等方法。可以通过修改默认的MutipartFile的resolver来实现调用临时文件,对临时文件进行判断
@Bean
public MultipartResolver multipartResolver(){
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
resolver.setDefaultEncoding("UTF-8");
resolver.setResolveLazily(true);
return resolver;
}
并且
@EnableAutoConfiguration(exclude = {MultipartAutoConfiguration.class})