场景:
旧的springMVC项目中使用CommonsMultipartFile类型来接收上传的文件,现在进行迁移,框架使用springboot2.0+ ,始终无法接收请求。
原因:
- Spring Boot默认使用StandardServletMultipartResolver处理Multipart。
对应的使用StandardMultipartFile来接收文件数据。 - 如果希望用CommonsMultipartFile来接收文件数据,
在没有配置multipartResolver为 CommonsMultipartResolver,
使用CommonsMultipartResolver来处理Multipart,将会报错。
解决:
Multipart配置类:
package com.example.hellospringboot.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
@Configuration
public class MultipartConfig {
@Bean(name = "multipartResolver")
public CommonsMultipartResolver getCommonsMultipartResolver() {
CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver();
multipartResolver.setMaxUploadSize(20971520);
multipartResolver