• springmvc 中将MultipartFile转为file,springboot 注入CommonsMultipartResolver


    第一种方法:
    
         MultipartFile file = xxx; 
            CommonsMultipartFile cf= (CommonsMultipartFile)file; 
            DiskFileItem fi = (DiskFileItem)cf.getFileItem(); 
    
            File f = fi.getStoreLocation();
    
      会在项目的根目录的临时文件夹下生成一个文件;
    
    第二种方法:
    
        transferTo(File dest);
    
      会在项目中生成一个新文件;
    
    第三种方法:   
    
      File f = (File) xxx 强转即可。前提是要配置multipartResolver,要不然会报类型转换失败的异常。
    
        <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
            <property name="maxUploadSize" value="104857600"/>
            <property name="maxInMemorySize" value="4096"/>
        </bean>
      没试过;
    第四种方法:
      Workbook wb = Workbook.getWorkbook(xxx .getInputStream());
      转换为输入流,直接读取;
    第五种方法:
      byte[] buffer = myfile.getBytes();
      先转换为字节数组,没试过;
     //显示声明CommonsMultipartResolver为mutipartResolver
        @Bean(name = "multipartResolver")
           public MultipartResolver multipartResolver(){
            CommonsMultipartResolver resolver = new CommonsMultipartResolver();
            resolver.setDefaultEncoding("UTF-8");
            resolver.setResolveLazily(true);//resolveLazily属性启用是为了推迟文件解析,以在在UploadAction中捕获文件大小异常
            resolver.setMaxInMemorySize(40960);
            resolver.setMaxUploadSize(50*1024*1024);//上传文件大小 50M 50*1024*1024
            return resolver;
        }   
  • 相关阅读:
    最流行的javascript 代码规范
    jquery里阻止冒泡ev.stopPropagation()
    jquery里阻止冒泡ev.stopPropagation()
    响应式页面设计原理
    fromCharCode()的用法
    slice的用法
    java 反转数组
    java 一个数组的长度
    Java访问数组
    java 数组的定义
  • 原文地址:https://www.cnblogs.com/huzi007/p/5971197.html
Copyright © 2020-2023  润新知