uploadify文件上传的使用
1.jsp代码
1 appname=$("#appname").val(); 2 $("#uploadify").uploadify({ 3 ‘swf‘ : ‘<%=basePath%>/Backstage/Style/jQuery-uploadify/uploadify.swf‘, 4 // ‘script‘ : ‘ProductAction!fileUpload.do‘,//后台处理的请求 5 ‘uploader‘: ‘AppVersionAction!fileUpload.do?appname=‘+appname , 6 ‘cancelImg‘ : ‘<%=basePath%>/Backstage/include/easyvalidator/images/vtip_arrow.png‘, 7 ‘folder‘ : ‘/uplaod/temp‘,//您想将文件保存到的路径 8 ‘queueID‘ : ‘fileQueue‘,//与下面的id对应 9 ‘fileObjName‘:‘uploadify‘, 10 ‘queueSizeLimit‘ : 5, 11 ‘fileDesc‘ : ‘文件格式‘, 12 ‘fileTypeExts‘ : ‘*.apk;*.ipa;*.png‘, //控制可上传文件的扩展名,启用本项时需同时声明fileDesc 13 ‘auto‘ : false, 14 ‘multi‘ : true, 15 ‘simUploadLimit‘ : 2, 16 ‘buttonText‘ : ‘选择文件‘, 17 ‘onQueueComplete‘ : function(file,data,response) { 18 picFlag = true; 19 } 20 });
1 <input type="file" name="uploadify" id="uploadify" /> 2 <input id="appname" type="text" value="<s:property value="version.appName"/>" name="version.appName" size="30" maxlength="32" data-options="required:true,missingMessage:‘请输入版本号‘" class="easyui-validatebox" /><font color="red"> *</font>
2.action和service
1 public void addVersion() { 2 String appname= getRequest().getParameter("appname"); 3 UploadImg upload = new UploadImg(); 4 try { 5 /** 商品基本属性 **/ 6 version.setId(Constants.getUUID()); 7 version.setCreateTime(Constants.getSimpleDateFormat3()); 8 9 /** 将缓存中的图片放入版本目录中 **/ 10 List<String> files = (List<String>) getSession().getAttribute("files"); 11 String filesext=(String) getSession().getAttribute("fileExt"); 12 String updateUrl=(String) getSession().getAttribute("fileName1"); 13 if (files != null) { 14 SimpleDateFormat yearFormat = new SimpleDateFormat("yyyyMMdd"); 15 String folderName = Constants.versionFileSavePath + "/" + yearFormat.format(new Date()) ; 16 String newFileName=appname+"."+filesext; 17 for (int i = 0; i < files.size(); i++) { 18 upload.moveAndSaveFile(getRequest(), "/Upload/temp" +files.get(i), "/Upload/"+folderName,newFileName); 19 } 20 version.setUpdateUrl(updateUrl); 21 // commodityInfo.setImageDir("/Upload/" + folderName); 22 } 23 getSession().removeAttribute("files"); 24 getSession().removeAttribute("fileName1"); 25 this.wfAppVersionService.addObject(version); 26 String json = JSON.toJSONString(version); 27 json = json.replace("}", ",\"tips\":\"新增版本信息成功\"}"); 28 getResponse().setContentType("text/html;charset=utf-8"); 29 getResponse().getWriter().println(json); 30 } catch (Exception ex) { 31 ex.printStackTrace(); 32 try { 33 getResponse().setStatus(555); 34 getResponse().getWriter().println("新增失败"); 35 Logger.getLogger(AppVersionAction.class).info("版本控制执行新增操作异常"); 36 } catch (IOException e) { 37 e.printStackTrace(); 38 } 39 } 40 }
1 public void copyAndUpateFile(HttpServletRequest request,String oldPath, String newPath, String newName) { 2 try { 3 int bytesum = 0; 4 int byteread = 0; 5 System.out.println("@@newPath: "+newPath); 6 File oldfile = new File(request.getRealPath("/")+oldPath); 7 if (oldfile.exists()) { // 文件存在时 8 //查看传入的目录是否存在 如果不存在就创建 9 if (newPath.split("/").length > 0) { 10 String[] paths = newPath.split("/"); 11 String path = request.getRealPath("/") ; 12 for (int i = 0; i < paths.length; i++) { 13 path += paths[i] + "/"; 14 File saveDirFile = new File(path); 15 if (!saveDirFile.exists()) { 16 saveDirFile.mkdirs(); 17 } 18 } 19 } 20 File file=new File(request.getRealPath("/")+newPath+"/"+"cbt_"+newName); 21 file.createNewFile(); 22 InputStream inStream = new FileInputStream(request.getRealPath("/")+oldPath); // 读入原文件 23 FileOutputStream fs = new FileOutputStream(request.getRealPath("/")+newPath+"/"+"cbt_"+newName); 24 byte[] buffer = new byte[1444]; 25 while ((byteread = inStream.read(buffer)) != -1) { 26 bytesum += byteread; // 字节数 文件大小 27 fs.write(buffer, 0, byteread); 28 } 29 inStream.close(); 30 } 31 } catch (Exception e) { 32 System.out.println("复制单个文件操作出错"); 33 e.printStackTrace(); 34 35 } 36 } 37 38 /** 39 * 将临时文件tmp移动并改变格式 40 * @Title: UploadImg 41 * @param: @param request 42 * @param: @param oldPath 43 * @param: @param newPath 44 * @param: @param newName 45 * @return: 46 * @throws: 47 * @Description: TODO 48 */ 49 public void moveAndSaveFile(HttpServletRequest request,String oldPath, String newPath,String newName) { 50 copyAndUpateFile(request,oldPath, newPath,newName); 51 String fileExt = oldPath.substring(oldPath.lastIndexOf(".") + 1).toLowerCase(); 52 System.out.println("oldPath: "+oldPath+"###NewPath: "+newPath+" fileExt: "+fileExt); 53 delFile(request,oldPath); 54 55 }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。