温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot怎么配置上传文件的maxRequestSize

发布时间:2022-03-25 09:09:52 来源:亿速云 阅读:877 作者:iii 栏目:开发技术

这篇文章主要介绍“springboot怎么配置上传文件的maxRequestSize”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“springboot怎么配置上传文件的maxRequestSize”文章能帮助大家解决问题。

配置上传文件的maxRequestSize

springboot配置上传文件的maxRequestSize,根据boot版本的不同会 有些差别,设置时,是相当坑的,一不注意就白设了

在application.properties中的配置为

SpringBoot-2.0

spring.servlet.multipart.max-file-size=10Mb
spring.servlet.multipart.max-request-size=100Mb

SpringBoot-1.4

spring.http.multipart.maxFileSize=10Mb
spring.http.multipart.maxRequestSize=100Mb

SpringBoot-1.4之前

multipart.maxFileSize = 10Mb
multipart.maxRequestSize=100Mb

设置上传文件大小的两种方法

springboot 1.5.X系列处理方式

第一种、直接在springboot的启动类里加入下面的代码。

在配置类中配置@Bean,注意当前配置类上需要加注解@Configuration

/**  
     * 文件上传配置  
     * @return  
     */  
    @Bean  
    public MultipartConfigElement multipartConfigElement() {  
        MultipartConfigFactory factory = new MultipartConfigFactory();  
        //文件最大  
        factory.setMaxFileSize("10240KB"); //KB,MB  
        /// 设置总上传数据总大小  
        factory.setMaxRequestSize("102400KB");  
        return factory.createMultipartConfig();  
    }

第二种、在application.properties中添加如下配置信息

配置文件直接配置,与springboot2.x版本一致

application.properties

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

注意

spring.http.multipart.maxFileSize=10Mb

spring.http.multipart.maxRequestSize=10Mb

已经过期 >>>>

application.yml

    spring:
      servlet:
        multipart:
          max-file-size: 20MB
          max-request-size: 20MB

maxFileSize 是单个文件大小

maxRequestSize是设置总上传的数据大小

这就可以了。

根据自己需求定义吧,只能是MB和KB两种类型,字母大小写随意,Long类型可以的

另外这是MultipartConfigFactory类中的转换,可以瞅一眼

private long parseSize(String size) {  
     Assert.hasLength(size, "Size must not be empty");
        size = size.toUpperCase(Locale.ENGLISH);
        if (size.endsWith("KB")) {
            return Long.valueOf(size.substring(0, size.length() - 2)) * 1024L;
        } else {
            return size.endsWith("MB") ? Long.valueOf(size.substring(0, size.length() - 2)) * 1024L * 1024L : Long.valueOf(size);
        }
  }

Springboot 2.X系列配置

第一种

在配置文件中添加配置

 @Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //文件最大10M,DataUnit提供5中类型B,KB,MB,GB,TB
        factory.setMaxFileSize(DataSize.of(10, DataUnit.MEGABYTES));
        /// 设置总上传数据总大小10M
        factory.setMaxRequestSize(DataSize.of(10, DataUnit.MEGABYTES));
        return factory.createMultipartConfig();
    }

第二种

配置文件直接配置

application.properties

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

application.yml

    spring:
      servlet:
        multipart:
          max-file-size: 20MB
          max-request-size: 20MB

关于“springboot怎么配置上传文件的maxRequestSize”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI