commons-fileupload组件实现的文件基本上传

使用commons-fileupload组件实现的基本上传: 
 

1. 加jar包:commons-fileupload.jar,  commons-io.jar 

2. JSP页面中增加form: 

   <form enctype="multipart/form-data"  method="post" action="uploadVideo"> 
      <input type="file" name="file1"/> 
      <input type="submit" name="submit1" value="提交"/> 
</form> 
 
3. 增加servlet: 
 

public void doPost(HttpServletRequest request, HttpServletResponse response)   throws ServletException, IOException { 

   String tempDirectory = "d:/temp/";    //要在最后加上斜杠:temp/ 

  try {    int sizeThreshold = 1024 * 64;  //写满该大小的缓存后,存入硬盘中。   

 File repositoryFile = new File(tempDirectory);  

   FileItemFactory factory = new DiskFileItemFactory(sizeThreshold, repositoryFile); 
     ServletFileUpload upload = new ServletFileUpload(factory);    

 upload.setSizeMax(500 * 1024 * 1024); // set every upload file'size less than 500M  
 
 List items = upload.parseRequest(request);   //这里开始执行上传   

 Iterator iter = items.iterator();     
   while (iter.hasNext()) {  
FileItem item = (FileItem) iter.next();   //FileItem就是表示一个表单域。       
if(item.isFormField()){ //isFormField方法用于判断FileItem是否代表一个普通表单域(即非file表单域)    

   System.out.println("***"+item.getFieldName());  
  }else { 

  //String fieldName = item.getFieldName();  //获取表单域name属性的值 
//  String fileName = item.getName();     //返回该文件在客机上的文件名。e.g: e:\dianying\\video\1.wmv 

//     System.out.println("*****"+fieldName);

 //     System.out.println("*****"+fileName);     

   String path = item.getName();   

     String fileName = path.substring(path.lastIndexOf("\\")); 
     File uploadedFile = new File("d:/video/" + fileName);     

 item.write(uploadedFile); 
     } 
   } 
  } catch (Exception e) { 
   e.printStackTrace(); 
   } 
 } 
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值