第一种: 1、创建配置文件。
import javax.servlet.MultipartConfigElement;
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;
@Configuration public class FileConfig {
@Value("${spring.server.MaxFileSize}")
private String MaxFileSize;
@Value("${spring.server.MaxRequestSize}")
private String MaxRequestSize;
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
// 单个数据大小
factory.setMaxFileSize(MaxFileSize); // KB,MB
/// 总上传数据大小
factory.setMaxRequestSize(MaxRequestSize);
return factory.createMultipartConfig();
}
}
2、然后再在application.properties中进行配置
#文件请求大小 spring.server.MaxFileSize=1000MB spring.server.MaxRequestSize=1000MB
第二种: 1、在启动类添加如下代码:
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
//单个文件最大限制
factory.setMaxFileSize("10240KB"); //KB,MB
// 设置总上传数据总大小
factory.setMaxRequestSize("102400KB");
return factory.createMultipartConfig();
}
2、根据spring boot 版本不同在application.properties文件添加不同的配置 Spring Boot 1.3 或之前的版本,配置:
multipart.maxFileSize = 500Mb
multipart.maxRequestSize=500Mb
Spring Boot 1.4 版本后配置更改为:
spring.http.multipart.maxFileSize = 500Mb
spring.http.multipart.maxRequestSize = 500Mb
Spring Boot 2.0 之后的版本配置修改为: 单位Mb改为MB了:
spring.servlet.multipart.max-file-size = 500MB
spring.servlet.multipart.max-request-size = 500MB
multipart.maxFileSize=50Mb是设置单个文件的大小, multipart.maxRequestSize=500Mb是设置单次请求的文件的总大小 如果是想要不限制文件上传的大小,那么就把两个值都设置为-1。
第三种: 也就是Spring Boot 2.0 之后的版本,直接在application.properties配置修改为:
spring.servlet.multipart.max-file-size=500MB
spring.servlet.multipart.max-request-size=500MB
|