<link rel="stylesheet" type="text/css" href='<c:url value="/uploadify/uploadify.css"/>' /> <script src="<c:url value="/uploadify/jquery.uploadify.min.js"/>"type="text/javascript"></script> <a class="task_btn_upload" href="javascript:$('#file_upload1').uploadify('upload','*')">開始上傳</a> <input type="file" name="file_upload" id="file_upload"/> $(function() { $("#file_upload").uploadify({ 'auto':false, //是否容許自動上傳 'swf' : '../uploadify/uploadify.swf?var=' +(new Date()).getTime(), //引入flash 'buttonText':'', //設置button文字 'removeCompleted': true,//是否移除掉隊列中已經完成上傳的文件。false爲不移除 'removeTimeout': 3,//設置上傳完成後刪除掉文件的延遲時間,默認爲3秒。 'width ':'120', //按鈕寬度 'method':'PSOT', //提交方式 'multi':'true', //是否多文件上傳 'fileObjName' : 'myFile', //文件對象名稱,用於後臺獲取文件對象時使用 'preventCaching':'true', //防止瀏覽器緩存 'formData':{'emergencyId':1111}, //動態傳參 'queueID': 'custom-queue', //顯示在某個div的位置 custom-queue div的id 'uploader' : 'emergencyQueryRevision.do? method=addAnnex' , //提交後臺方法路徑 //onUploadStart 動態傳參的關鍵 'onUploadStart':function(){ $("#file_upload").uploadify("settings","formData", {'emergencyId': $("#id").val()}); }, 'onFallback' : function() {//檢測FLASH失敗調用 alert("您未安裝FLASH控件,沒法上傳圖片!請安裝FLASH控件後再試。"); }, 'onUploadSuccess':function(file, data, response){ var Data = eval('('+data+')'); // alert(file.name+"上傳"+Data.result); }, onError: function(event, queueID, file) { alert(file.name + " 上傳失敗"); }, 'onQueueComplete':function(stats) { //版本不同方法也存在差別 alert("成功上傳的文件數:" + stats.uploadsSuccessful + " =上傳出錯的文件數:" +stats.uploadsErrored + " -上傳的文件總大小:" + stats.uploadSize); cancel(); }, }); });
//上傳附件 MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; MultipartFile file =multipartRequest.getFile("myFile"); //獲取服務器地址 ServletContext sc = request.getSession().getServletContext(); //附件存放服務器路徑 String dir = sc.getRealPath("/upload/yingjiwuzhi/"); //若是文件夾不存在,則建立文件夾 if (!new File(dir).exists()){ new File(dir).mkdirs(); } String fileName = file.getOriginalFilename(); String realName = fileName.substring(0, fileName.indexOf(".")); //防止文件被覆蓋,以納秒生成文件名稱 Long _l = System.nanoTime(); String _extName = fileName.substring(fileName.indexOf(".")); fileName = _l + _extName; String uploadPath = request.getContextPath() + "/upload/yingjiwuzhi/" + fileName; //存儲格式爲:/項目名/upload/yingjiwuzhi/43038800303864.log //存儲到數據庫的相對路徑 String responseStr=""; try { FileUtils.writeByteArrayToFile(new File(dir, fileName), file.getBytes());//服務器中生成文件 responseStr="上傳成功"; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); responseStr="上傳失敗"; }
//刪除服務器上的附件 //獲取服務器地址 ServletContext sc = request.getSession().getServletContext(); //項目名稱 String projectName = request.getContextPath(); String annexId = request.getParameter("annexId"); String emergencyId = request.getParameter("emergencyId"); //附件路徑 存儲格式爲:/項目名/upload/yingjiwuzhi/43038800303864.log String annexPath=request.getParameter("path"); if(!"".equals(annexPath)&&annexPath!=null){ String path = annexPath.replace(projectName, ""); String filePath = sc.getRealPath(path.trim()); File file = new File(filePath); // 若是文件路徑所對應的文件存在,而且是一個文件,則直接刪除 if (file.exists() && file.isFile()) { if (file.delete()) { map.put("result", "true"); } else { map.put("result", "false"); } } else { file.delete(); map.put("result", "true"); } }