文件上传--Smartupload上传组件【下】

批量上传

从之前可以发现,不管上传多少个文件,都可以通过getFiles()方法取得,那么现在就可以利用操作完成多个文件的上传,这种操作就是文件的批量上传。

  一个实例看一下批量上传是怎么上传的。

  
  
  
  
  1. Smart_03.html  
  2. <html> 
  3. <head> 
  4. <title>WEB开发</title> 
  5. </head> 
  6. <body> 
  7. <form action="smart_03.jsp" method="post" enctype="multipart/form-data"> 
  8.   照片1:<input type="file" name="pic1"><br> 
  9.  照片2:<input type="file" name="pic2"><br> 
  10.   照片3: <input type="file" name="pic3"><br> 
  11.     <input type="submit" value="上传"><br> 
  12.     <input type="reset" value="重置"> 
  13. </form> 
  14. </body> 
  15. </html> 
  
  
  
  
  1. Smart_03.jsp  
  2. <%@ page language="java" contentType="text/html" pageEncoding="utf-8"%> 
  3. <%@ page import="com.jspsmart.upload.*" %> 
  4. <%@ page import="simpl.IPTimeStamp"%> 
  5. <html> 
  6. <head> 
  7. <title>WEB开发项目</title> 
  8. </head> 
  9. <body> 
  10. <%  
  11.     request.setCharacterEncoding("utf-8");  
  12. %> 
  13. <%   
  14.    SmartUpload smart=new SmartUpload();  
  15.    smart.initialize(pageContext);// 初始化上传操作  
  16.    smart.upload();       //上传准备  
  17.    String name=smart.getRequest().getParameter("uname");  
  18.    //实例化IPTimeStamp对象  
  19.    IPTimeStamp its=new IPTimeStamp(request.getLocalAddr());  
  20.    for(int x=0;x<smart.getFiles().getCount();x++){  
  21.        String ext=smart.getFiles().getFile(x).getFileExt();//取得文件后缀  
  22.        String fileName=its.getIPTimeRand()+"."+ext;//拼凑文件名称  
  23.        smart.getFiles().getFile(x).saveAs(getServletContext().getRealPath("/")  
  24.            +"upload"+java.io.File.separator+fileName);//保存文件  
  25.    }  
  26. %> 
  27. </body> 
  28. </html> 

运行后结果如下:

上传后看一下upload文件夹中的确有了3中图片(如下图),而且这3张图片都是同一张图片,但是命名确实不一样的,在Smartupload上传组件【中】中我们都讲过了。

到目前为止,文件上传就学到这个地方,需要注意的是:文件的上传还有比较常用的是fileUpload上传组件,fileUpload是很复杂的一种上传,牵扯到的东西比较多,一般应用与框架开发中,比如Structs 等框架。相比较来说,Smartupload上传应用与jsp开发中,而且比较简单。

你可能感兴趣的:(文件上传,jsp,web开发,SmartUpload,批量上传)