zoukankan      html  css  js  c++  java
  • JavaEE——SpringMVC(10)--文件上传 CommonsMultipartResovler

    Spring MVC 为文件上传提供了直接的支持,这种支持是通过即插即用的 MultipartResolver 实现的。Spring 用Jakarta Commons FileUpload 技术实现了一个MultipartResolver 实现类:CommonsMultipartResovler
    • Spring MVC 上下文中默认没有装配 MultipartResovler,因此默认情况下不能处理文件的上传工作,如果想使用 Spring的文件上传功能,需现在上下文中配置 MultipartResolver

    配置 MultipartResolver
    • defaultEncoding: 必须和用户 JSP 的 pageEncoding 属性一致,以便正确解析表单的内容
    • 为了让 CommonsMultipartResovler 正确工作,必须先将 Jakarta Commons FileUpload 及 Jakarta Commons io的类包添加到类路径下。

    1.加入jar包

    commons-fileupload-1.2.1中的

    commons-io-2.0中的

     2.在配置文件中配置MultipartResovler

    <!--配置MultipartResolver-->
        <bean id="multipartResolver"
              class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
            <property name="defaultEncoding" value="UTF-8"></property>
            <property name="maxUploadSize" value="1024000"></property>
        </bean>
    

      

    3.handlers

    @RequestMapping(value="testFileUpload")
        public String testFileUpload(@RequestParam("desc") String desc,
                                     @RequestParam("file") MultipartFile file) throws IOException {
    
            System.out.println("desc " + desc);
            System.out.println("OriginalFilename " + file.getOriginalFilename());
            System.out.println(file.getInputStream());
            return "success";
        }
    

      

    4.jsp表单

    <form action="testFileUpload" method="post" enctype="multipart/form-data">
        File <input type="file" name="file"/>
        Desc <input type="text" name="desc"/>
        <input type="submit" value="submit"/>
      </form>
    

      

  • 相关阅读:
    PHP流程控制之do...while循环的区别
    php流程控制 之循环语句的使用
    PHP流程控制之分支结构switch语句的使用
    PHP流程控制之if语句多种嵌套
    PHP流程控制之嵌套if...else...elseif结构
    PHP基础语法之 三元运算符和其它运算符
    PHP基础语法之 位运算
    php常量和变量之变量引用
    php数据类型之自动转换和强制转换
    php数据类型之查看和判断数据类型
  • 原文地址:https://www.cnblogs.com/SkyeAngel/p/8407041.html
Copyright © 2011-2022 走看看