这个错误是因为 Spring Boot 默认限制上传文件的大小为 1048576 字节(1MB)。如果上传的文件超过了这个大小,就会报错。

要解决这个问题,可以通过修改配置文件或者在代码中进行配置来增加文件上传的大小限制。具体的操作如下:

  1. application.properties 文件(或者 application.yml 文件)中增加以下配置:

    spring.servlet.multipart.max-file-size=10MB
    spring.servlet.multipart.max-request-size=10MB
    

    这里的 10MB 表示允许上传的文件最大为 10MB。你可以根据实际需要修改这个值。

  2. 如果你使用的是 Spring Boot 2.0 及以上版本,你还需要在启动类中增加 @EnableConfigurationProperties 注解,并创建一个 MultipartProperties 对象来配置文件上传的大小限制。具体的代码如下:

    import org.springframework.boot.context.properties.EnableConfigurationProperties;
    import org.springframework.boot.web.servlet.MultipartConfigFactory;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.boot.web.servlet.MultipartProperties;
    import javax.servlet.MultipartConfigElement;
    
    @Configuration
    @EnableConfigurationProperties(MultipartProperties.class)
    public class MultipartConfiguration {
    
        private final MultipartProperties multipartProperties;
    
        public MultipartConfiguration(MultipartProperties multipartProperties) {
            this.multipartProperties = multipartProperties;
        }
    
        @Bean
        public MultipartConfigElement multipartConfigElement() {
            MultipartConfigFactory factory = new MultipartConfigFactory();
            factory.setMaxFileSize(multipartProperties.getMaxFileSize());
            factory.setMaxRequestSize(multipartProperties.getMaxRequestSize());
            return factory.createMultipartConfig();
        }
    }
    

以上两种方法你可以选择其中一种来解决这个问题。注意,如果你同时配置了这两种方法,以代码中的配置为准。

Spring Boot 文件上传大小限制:解决 'field file exceeds its maximum permitted size' 错误

原文地址: https://www.cveoy.top/t/topic/pjpb 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录