Jquery多文件上传前后台代码

package com.ving.servlet;


import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

 

public class MultiFileUploadServlet extends HttpServlet {

 /**
  *
  */
 private static final long serialVersionUID = -69746115921137365L;
   
 
 @SuppressWarnings("rawtypes")
 @Override
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  
  DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
  diskFileItemFactory.setSizeThreshold(3*1024*1024);
  diskFileItemFactory.setRepository(new File("D:/tempdir"));
     ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
     try {
   List items = servletFileUpload.parseRequest(request);
   Iterator iter = items.iterator();
   while (iter.hasNext()) {
       FileItem item = (FileItem) iter.next();

       if (item.isFormField()) {
           processFormField(item);
       } else {
           processUploadedFile(item);
       }
   }
   
  } catch (FileUploadException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }


 private void processFormField(FileItem item) {
  String name = item.getFieldName();
     String value = item.getString();
     System.out.println("name:"+name+"value:"+value);
 }


 private void processUploadedFile(FileItem item) {
//  String fieldName = item.getFieldName();
     String fileName = item.getName();
     String contentType = item.getContentType();
     boolean isInMemory = item.isInMemory();
     long sizeInBytes = item.getSize();
     System.out.println(fileName+","+contentType+","+isInMemory+","+sizeInBytes);
     if(sizeInBytes>0){
       File dir = new File("D:/upload");
       if(!dir.isDirectory()){
        dir.mkdir();
       }
      File uploadedFile = new File(dir,fileName);
      try {
       if(!uploadedFile.exists()){
        uploadedFile.createNewFile();
       }
    item.write(uploadedFile);
   } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
     }
  
 }
 
}

 

 

==============================================

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>JQeury多文件上传测试</title>
<!--
引入jquery的主文件和上传的插件,注意下方蓝色文件显示的地方,只有使用了jquery相关插件的时候才可以这样写,其中class="multi"指定了该域可以使用jquery插件特有的属性,accept="gif|jpg"表示允许的上传文件类型,多个类型之间用|进行分割。maxlength="3"指定了允许上传文件的最大个数

-->
<script type="text/javascript" src="jquery-1.6.4.js"></script>
<script type="text/javascript" src="jquery.MultiFile.js"></script>
</head>

<body>
<form action="http://localhost:8080/toHtml/upload" method="post" enctype="multipart/form-data">
  <input name="jq" type="file" class="multi"  maxlength="3"/><!--accept="gif|jpg"-->
   <br>
   <input type="submit" value="上传">
</form>
</body>

</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值