jquery.uploadify插件与java web的结合实现多文件上传+进度条

load1.jsp

上传页面:

<%@page import="java.net.URLEncoder"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>


<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>




<link href="common/chajian/load/uploadify.css" rel="stylesheet" type="text/css" /> 
<script type="text/javascript" src="common/js/jquery-1.4.1.js"></script>
<script type="text/javascript" src="common/chajian/load/swfobject.js"></script>  
<script type="text/javascript" src="common/chajian/load/jquery.uploadify.v2.1.4.min.js"></script>




<script type="text/javascript">
   $(function(){
  
  $("#uploadify").uploadify({
           'uploader'       : 'common/chajian/load/uploadify.swf',
           'script'         : 'load2.jsp?op=load', 
           'cancelImg'      : 'common/chajian/load/cancel.png', 
           'queueID'        : 'fileQueue',
           'auto'     : false,
           'multi'   : true,
           'fileDesc':'请选择rar doc pdf文件',
           'fileExt':'*.doc;*.pdf;*.rar', 
           'queueSizeLimit': 2,
           'simUploadLimit' : 1, 
           'buttonText'     : 'BROWSE', 
           'onError':function(event,queueID,fileObj){
              alert("错误!!!!!!!!");
            }
       });


 
   });
</script>
</head>
<body>
 
  <div id="fileQueue"></div>
  <input type="file" name="uploadify" id="uploadify" />
<br/> 


  <a href="javascript:jQuery('#uploadify').uploadifyUpload()">开始上传</a>&nbsp;
  <a href="javascript:jQuery('#uploadify').uploadifyClearQueue()">取消所有上传</a>




</body>
</html>



load2.jsp 处理页面

  

 <%@page import="java.io.OutputStream"%>
<%@page import="org.apache.commons.io.FileUtils"%>
<%@page import="java.util.UUID"%>
<%@page import="org.apache.commons.fileupload.FileItem"%>
<%@page import="java.util.Iterator"%>
<%@page import="org.apache.commons.fileupload.FileUploadException"%>
<%@page import="java.util.List"%>
<%@page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
<%@page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>
<%@page import="java.io.File"%>
<%@page import="java.net.URLEncoder"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>


<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="common/js/jquery-1.4.1.js"></script>
 
</head>
<body>




<%
   if(request.getParameter("op").equals("load")){ 
   
  String savePath =config.getServletContext().getRealPath("");
       savePath = savePath + "/load/";
       File f1 = new File(savePath);
       System.out.println(savePath);
       if (!f1.exists()) {
           f1.mkdirs();
       }
       DiskFileItemFactory fac = new DiskFileItemFactory();
       ServletFileUpload upload = new ServletFileUpload(fac);
       upload.setHeaderEncoding("utf-8");
       List fileList = null;
       try {
           fileList = upload.parseRequest(request);
       } catch (FileUploadException ex) {
           return;
       }
       Iterator<FileItem> it = fileList.iterator();
       String name = "";
       String extName = "";
       while (it.hasNext()) {
           FileItem item = it.next();
           if (!item.isFormField()) {
               name = item.getName();
               long size = item.getSize();
               String type = item.getContentType();
               System.out.println(size + " " + type);
               if (name == null || name.trim().equals("")) {
                   continue;
               }
               //扩展名格式:  
               if (name.lastIndexOf(".") >= 0) {
                   extName = name.substring(name.lastIndexOf("."));
               }
               File file = null;
               do {
                   //生成文件名:
                   name = UUID.randomUUID().toString();
                   file = new File(savePath + name + extName);
               } while (file.exists());
               File saveFile = new File(savePath + name + extName);
               try {
                   item.write(saveFile);
               } catch (Exception e) {
                   e.printStackTrace();
               }
           }
       }
       
   }


%>
  
 
</body>
</html>



jar 

upload 

io 

logging





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值