1.SpringBoot设置文件上传大小限制
在配置类中注入:
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
factory.setMaxFileSize("20480KB");// 单个数据大小
factory.setMaxRequestSize("20480KB");// 总上传数据大小
return factory.createMultipartConfig();
}
2.SpringBoot上传文件大于10M出现连接重置的问题
//Tomcat large file upload connection reset
//tomcatEmbedded 这段代码是为了解决,上传文件大于10M出现连接重置的问题。此异常内容 GlobalException 也捕获不到。
@Bean
public TomcatServletWebServerFactory tomcatEmbedded() {
TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
tomcat.addConnectorCustomizers((TomcatConnectorCustomizer) connector -> {
if ((connector.getProtocolHandler() instanceof AbstractHttp11Protocol<?>)) {
//-1 means unlimited
((AbstractHttp11Protocol<?>) connector.getProtocolHandler()).setMaxSwallowSize(-1);
}
});
return tomcat;
}
也可以根据application.properties配置
spring.servlet.multipart.max-file-size=1MB
spring.servlet.multipart.max-request-size=5MB
spring.servlet.multipart.resolve-lazily=false
server.tomcat.max-swallow-size=100MB (跟上面代码块作用相同)