SpringMVC文件上传

    科技2024-11-03  15

    SpringMVC框架提供了MultpartFile对象,该对象表示上传的文件,要求变量名称必须和表单file标签的name属性名称相同

    示例代码如下:

    <%--jsp代码--%>  <%--SpringMVC文件上传--%>  <form action="user/fileupload2" method="post" enctype="multipart/form-data">      选择文件:<input type="file" name="upload"/><br>      <input type="submit" value="上传"/>  </form>  

    控制器代码:

    /**  * SpringMVC方式文件上传  *  * @param request  * @param upload  上传的文件  * @return  * @throws Exception  */  @RequestMapping("/fileupload2")  public String fileupload2(HttpServletRequest request, MultipartFile upload) throws Exception {      System.out.println("SpringMVC文件上传...");        // 上传的位置      String path = request.getSession().getServletContext().getRealPath("/uploads/");      // 判断,该路径是否存在      File file = new File(path);      if (!file.exists()) {          // 创建该文件夹          file.mkdir();      }          // 获取上传文件的名称      String filename = upload.getOriginalFilename();      // 把文件的名称设置唯一值,uuid      String uuid = UUID.randomUUID().toString().replace("-""");      filename = uuid + "_" + filename;      // 完成文件上传      upload.transferTo(new File(path, filename));      return "success";  }  

    在SpringMVC配置文件中配置文件解析器对象

    <!--配置文件解析器-->  <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">      <!--配置上传文件最大大小为10m-->      <property name="maxUploadSize" value="10485760"/>  </bean>  
    Processed: 0.016, SQL: 8