Spring3 REST 上传多个文件

来源:互联网 发布:发饰品牌 知乎 编辑:程序博客网 时间:2024/06/05 03:21



前端时间讲述了在spring3下如何上传文件的例子(Spring3文件上传,提速你的Web开发),现在又需要使用Spring3对多个文件在REST(MVC)中进行上传,经过一番研究,将整理的内容归档如下, 废话少说看2段代码

jsp / html的 上传界面

<html>
<FORM enctype="multipart/form-data"  METHOD="POST" ACTION="image/upload2">
    <input type="file" name="file" /><br>
    <input type="file" name="file" /><br>
    <input type="text" name="text" value="text"><br>
    <INPUT TYPE="submit">
</FORM>
</html>

主要action java的代码

/**
    ** 上传单多文档
    */
    @RequestMapping(value = "/upload2")
     public String upload2(
        MultipartHttpServletRequest request ,
        @RequestParam("text") String text    // 页面上的控件值
        ) throws Exception {
      String path=UploadController.class.getResource("/").getPath().split("WEB-INF")[0]+"upload/images/";   // 获取站点下的绝对磁盘路径
      System.out.println("[ text ] : "+text);   // 打印 页面上的控件值
      List<MultipartFile> files = request.getFiles("file");
     
      for( int i=0; i<files.size() ;i++){
           if(! files.get(i).isEmpty()) {
               System.out.println( files.get(i).getOriginalFilename() );
               byte[] bytes =  files.get(i).getBytes();
               FileOutputStream fos = new FileOutputStream(path+ files.get(i).getOriginalFilename());    // 写入文件
               fos.write(bytes);
               fos.close();
           }
           System.out.println("Ok");
      }
      return "redirect:/image";
     }

原创粉丝点击