SpringBoot上传文件突破大小限制
网上有很多SpringBoot上传文件突破大小限制的文章,很多都是没用的,为了避免大家踩坑,先放正确的结论:
在代码中有这个注解(@Configuration)的任意类里面或者Application里面增加如下方法即可,没用相关的类,自己创建一个也行。
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
//单个文件最大
factory.setMaxFileSize("20MB"); //KB,MB
/// 设置总上传数据总大小
factory.setMaxRequestSize("20480KB");
return factory.createMultipartConfig();
}
然后我讲一下那些可能是错误的解决方式,避免大家踩坑:
yml文件中增加配置
最大支持文件大小
spring.servlet.multipart.max-file-size=100MB
最大支持请求大小
spring.servlet.multipart.max-request-size=100MB
// 设定tomcat的吞吐量
server.tomcat.max-swallow-size = 100MB
注意以上配置不能解决SpringBoot上传文件突破大小限制。还需要增加对网关的配置,但是一般情况下微服务项目的网关配置是公共的,不是随便能改的,所以不建议这样使用。
spring:
application:
name: gateway
servlet:
multipart:
# 最大支持文件大小
max-file-size: 100MB
# 最大支持请求大小
max-request-size: 100MB