如何解决 FileSizeLimitExceededException 错误?

use*_*530 5 java spring spring-mvc spring-boot tomcat9

上传 excel 文件大小超过 1MB 时出现错误。

[org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request;
 nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException:
 The field files exceeds its maximum permitted size of 1048576 bytes.]
Run Code Online (Sandbox Code Playgroud)

我尝试通过应用以下配置更改来修复它,但它们都没有帮助我。

尝试使用application.yml文件中的配置:

spring:
      http:
         multipart:
             max-file-size:5MB
             max-request-size:5MB
Run Code Online (Sandbox Code Playgroud)

我也尝试过以下注释:

@MultipartConfig(fileSizeThreshold=1024*1024*10,maxFileSize=1024*1024*10,maxRequestSize=1024*1024*10)
Run Code Online (Sandbox Code Playgroud)

最后我做了这个改变:

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" maxSwallowSize="-1"   />
Run Code Online (Sandbox Code Playgroud)

但没有任何作用!

Sem*_*urt 8

我尝试了 Alien 的解决方案,但它给出了已弃用的错误,因此我想分享新的解决方案

spring.servlet.multipart.max-request-size=10MB
spring.servlet.multipart.max-file-size=10MB
Run Code Online (Sandbox Code Playgroud)


Ali*_*ien 2

您的属性中有一个拼写错误S,Spring 是大写而不是小写。

在 spring-boot 1.5.2 中,您可以使用以下属性application.yml

spring:
 http:
  multipart:
   max-file-size: 100MB
   max-request-size: 100MB
Run Code Online (Sandbox Code Playgroud)

确保在 yaml 文件中使用空格而不是制表符。