• 上传大小配置


    SpringBoot文件上传大小设置问题

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">  
           <property name="maxUploadSize" value="104857600"/>  
           <property name="maxInMemorySize" value="4096"/>  
       </bean>

    这是以前上传文件时一种比较常见的设置上传文件大小的方法,但由于spring-boot自带org.springframework.web.multipart.MultipartFile的原因,配置这个bean后会产生冲突,以至于在后台获取不到上传的文件 

    解决方法:

    第一种: 
    在application.properties中添加:

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

    老版本的话添加:

    multipart.maxFileSize=128KB
    multipart.maxRequestSize=128KB

    其中: 
    maxFileSize 是单个文件大小 
    maxRequestSize是设置总上传的数据大小 
    原理-》MultipartConfigFactory类中的转换如下:

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

    第二种: 
    在启动类中配置@Bean,注意当前类上需要加注解@Configuration,如下:

    @Configuration  
    @SpringBootApplication  
    public class Application { 
        public static void main(String[] args) throws Exception {  
            SpringApplication.run(Application.class, args);  
        }  
        /**  
         * 文件上传配置  
         * @return  
         */  
        @Bean  
        public MultipartConfigElement multipartConfigElement() {  
            MultipartConfigFactory factory = new MultipartConfigFactory();  
            //文件最大  
            factory.setMaxFileSize("10240KB"); //KB,MB  
            /// 设置总上传数据总大小  
            factory.setMaxRequestSize("102400KB");  
            return factory.createMultipartConfig();  
        }  
    } 

    此外:Tomcat,Nginx等也会对文件上传做一定的限制,具体问题具体分析。

    当能力支撑不了野心时,就该静下心来学习!
  • 相关阅读:
    hadoop文件写入
    elastic(10) 基本查询
    hadoop 小知识点
    "hadoop namenode -format"命令的作用和影响的文件
    elastic(9)映射
    Linux 学习笔记之 --- epoll 事件模型详解
    Linux 学习笔记之 --- select 与 poll 事件模型详解
    Tornado 高并发源码分析之二---Tornado启动和请求处理流程
    Tornado 高并发源码分析之五--- IOLoop 对象
    Tornado 高并发源码分析之四--- HTTPServer 与 TCPServer 对象
  • 原文地址:https://www.cnblogs.com/1234cjq/p/7650223.html
Copyright © 2020-2023  润新知