zoukankan      html  css  js  c++  java
  • SpringBoot 2.x版本+MultipartFile设置指定文件上传大小

    SpringBoot-versio:2.1.9-RELEASE

    由于新版本的SpringBoot已经弃用了(1.5版本支持)如下,

     这种方式,提供了新的 配置方案。

    这个是官方的介绍

     Handling Multipart File Uploads

    Spring Boot embraces the Servlet 3 javax.servlet.http.Part API to support uploading files. By default, Spring Boot configures Spring MVC with a maximum size of 1MB per file and a maximum of 10MB of file data in a single request. You may override these values, the location to which intermediate data is stored (for example, to the /tmp directory), and the threshold past which data is flushed to disk by using the properties exposed in the MultipartProperties class. For example, if you want to specify that files be unlimited, set the spring.servlet.multipart.max-file-size property to -1.

    The multipart support is helpful when you want to receive multipart encoded file data as a @RequestParam-annotated parameter of type MultipartFile in a Spring MVC controller handler method.

    See the MultipartAutoConfiguration source for more details.

    [Note]

    It is recommended to use the container’s built-in support for multipart uploads rather than introducing an additional dependency such as Apache Commons File Upload.

    方案一:

      application.properties配置(yml一样,只是格式有变化)

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

    方案二:

      编写配置类,并通过@Bean标签来加入到IOC容器中管理

    package cn.arebirth.config;
    
    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.boot.web.servlet.MultipartConfigFactory;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.util.unit.DataSize;
    
    import javax.servlet.MultipartConfigElement;
    
    @Configuration
    public class FileUploadConfiuration {
        @Bean
        public MultipartConfigElement multipartConfigElement() {
            MultipartConfigFactory factory = new MultipartConfigFactory();
     //单个文件大小200mb
            factory.setMaxFileSize(DataSize.ofMegabytes(200L));
            //设置总上传数据大小10GB
            factory.setMaxRequestSize(DataSize.ofGigabytes(10L));
    
            return factory.createMultipartConfig();
        }
    }
  • 相关阅读:
    Codeforces Round #337 (Div. 2) A. Pasha and Stick 数学
    Educational Codeforces Round 4 D. The Union of k-Segments 排序
    Educational Codeforces Round 4 C. Replace To Make Regular Bracket Sequence 栈
    Educational Codeforces Round 4 B. HDD is Outdated Technology 暴力
    Educational Codeforces Round 4 A. The Text Splitting 水题
    Codeforces Round #290 (Div. 2) D. Fox And Jumping dp
    HDU 5601 N*M bulbs 找规律
    Codeforces Round #290 (Div. 2) C. Fox And Names dfs
    Codeforces Round #290 (Div. 2) B. Fox And Two Dots dfs
    Codeforces Round #290 (Div. 2) A. Fox And Snake 水题
  • 原文地址:https://www.cnblogs.com/arebirth/p/springbootsetmultipartfilesize.html
Copyright © 2011-2022 走看看