java 多文件上传

来源:互联网 发布:thinking in java目录 编辑:程序博客网 时间:2024/06/05 09:45
controller层import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.util.UUID;import javax.servlet.http.HttpServletRequest;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.multipart.commons.CommonsMultipartFile;@Controller@RequestMapping("file")public class UploadFilesAction {@RequestMapping("/uploads")public String uploadFiles(@RequestParam(value="file")CommonsMultipartFile[] file,HttpServletRequest request){//得到上传文件的保存目录String filePath = request.getSession().getServletContext().getRealPath("/uploads")+"/";File f = new File(filePath);if(!f.exists()){f.mkdir();}FileOutputStream fos = null;InputStream fis = null;for(int i=0;i<file.length;i++){System.out.println("fileName============"+file[i].getOriginalFilename());//原始文件名String fileName = file[i].getOriginalFilename();//新文件名String newFileName = UUID.randomUUID().toString().replace("-", "")+"."+fileName;if(!file[i].isEmpty()){try {fos = new FileOutputStream(filePath + newFileName);fis = file[i].getInputStream();int b = 0;while((b=fis.read()) != -1){fos.write(b);}} catch (Exception e) {e.printStackTrace();}finally{try {if(fos != null){fos.close();}} catch (Exception e2) {e2.printStackTrace();}try {if(fis != null){fis.close();}} catch (Exception e2) {e2.printStackTrace();}}}} return "result";}}
</pre><pre name="code" class="java">
jsp页面

<pre name="code" class="html">  <body>    <form action="file/uploads" enctype="multipart/form-data" method="post" id="upload_form">    <h2>请选择上传图片</h2>    <div>    <input type="file" name="file" id="file" />    <input type="file" name="file" id="file" />    </div>    <input type="submit" value="提交"/>    </form>  </body>

简单的一个多文件上传
                                             
1 0