• 文件上传过大被限制问题-springboot


    第一种:
    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();
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    }

    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();
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    2、根据spring boot 版本不同在application.properties文件添加不同的配置
    Spring Boot 1.3 或之前的版本,配置:

        multipart.maxFileSize = 500Mb
        multipart.maxRequestSize=500Mb
    
    • 1
    • 2

    Spring Boot 1.4 版本后配置更改为:

        spring.http.multipart.maxFileSize = 500Mb
        spring.http.multipart.maxRequestSize = 500Mb
    
    • 1
    • 2

    Spring Boot 2.0 之后的版本配置修改为: 单位Mb改为MB了:

        spring.servlet.multipart.max-file-size = 500MB
        spring.servlet.multipart.max-request-size = 500MB
    
    • 1
    • 2

    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
    
    
    • 1
    • 2
    • 3
  • 相关阅读:
    Linux 文件锁的原理、实现和应用
    【Python入门教程】基于OpenCV视频分解成图片+图片组合成视频(视频抽帧组帧)
    sklearn【MAPE】平均相对误差介绍,以及案例学习!
    【自动化持续集成必备基础】pipeline常用功能
    Set接口和常用方法
    SMI 与 Gateway API 的 GAMMA 倡议意味着什么?
    YOLOv7论文阅读
    前端基础建设与架构03 CI 环境上的 npm 优化及更多工程化问题解析
    目标检测应用场景和发展趋势
    Simple RPC - 01 框架原理及总体架构初探
  • 原文地址:https://blog.csdn.net/hanshanyunhai/article/details/125011550