ajaxFileUpload上传图片
jsp页面 <div class="picture"> <input id="uid" type="hidden"> input type="file" name="file" id="fn" onchange="select_img();"> <img id='target' class="popup" style="width:143px;height:190px;display:none;" /> 引用的js jquery.ajaxfileupload.js js代码 $(function () { $('input[type=text]').validatebox(); }); function uploadP(id){ $("#uid").val(id); $("#uploadpictrue").dialog("open"); } function select_img() { var id=$("#uid").val(); var value = $("#fn").val(); var ext = value.substring(value.lastIndexOf(".") + 1).toLowerCase(); if (ext == null || ext == "" || (ext != "jpg" && ext != "gif" && ext != "bmp" && ext != "jpeg" && ext != "png")) { $.messager.alert("操作提示","图片格式错误","info");
} else{ $.ajaxFileUpload({ url : "<%=basePath%>uploadImgFile.html?id="+id, secureuri : false,// 一般设置为false fileElementId : 'fn',// 文件上传空间的id属性 dataType : 'text',// 返回值类型 一般设置为json success : function(data,status) // 服务器成功响应处理函数 { var path=data.substring(8,data.length-3); if(path=="fail1"){ $("#fn").val(""); $.messager.alert("操作提示","文件超过4MB,请您重新上传","info");
}else{ $("#target").attr("src",getRootPath() + data); $("#btnl").css("display","block"); $("#target").css("display","block"); } }, error : function(data,status,e)// 服务器响应失败处理函数 { $.messager.alert("操作提示",e,"info"); } }); } } function getRootPath() { // 获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp var curWwwPath = window.document.location.href; // 获取主机地址之后的目录,如: uimcardprj/share/meun.jsp var pathName = window.document.location.pathname; var pos = curWwwPath.indexOf(pathName); // 获取主机地址,如: http://localhost:8083 var localhostPaht = curWwwPath.substring(0,pos); // 获取带"/"的项目名,如:/uimcardprj var projectName = pathName .substring(0,pathName.substr(1).indexOf('/') + 1); return (localhostPaht + projectName) + "/"; } 后台代码 @SuppressWarnings("unchecked") @RequestMapping(value = "/uploadImgFile.html") public @ResponseBody void uploadImgFile(HttpServletRequest request, HttpServletResponse response, @RequestParam("file") MultipartFile file,int id) throws Exception { JSONObject jsonObject=new JSONObject(); //文件大小 double fileSizeDouble = get2Double(((double) file.getSize() / 1024) / 1024); String fileSize = fileSizeDouble + "MB"; if (fileSizeDouble > 4.0) { jsonObject.put("msg","fail1"); // ResponseUtil.write(response,jsonObject); }else {
String sql="from TabExpert te where te.expertid='"+id+"'"; TabExpert tabExpert=tabExpertSercive.getTabExpertListByHql(sql).get(0); String msg=""; // 获取当期时间,作为文件名,避免重复 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); String fileTime = sdf.format(new Date()); String fileName = file.getOriginalFilename(); System.out.println(fileName); String type = fileName.substring(fileName.lastIndexOf(".") + 1); /*if (fileName.length() > 0) { if (!type.equals("jpg") && !type.equals("bmp") && !type.equals("gif") && !type.equals("png") && !type.equals("jpeg")) { jsonObject.put("msg","图片格式错误");
} }else{ */ // 上传的文件放在“realPath”目录下 String realPath1 = request.getSession().getServletContext() .getRealPath("houtai/image/" + fileTime); if ((new File(realPath1).isDirectory())) { System.out.println("文件夹已存在!创建失败!"); } else { new File(realPath1).mkdir(); System.out.println("创建文件夹成功!"); } if (fileName.length() > 0) { // 存入照片 FileUtils.copyInputStreamToFile(file.getInputStream(),new File( realPath1,fileName)); // 相片路径 String realPath = realPath1 + "" + fileName; System.out.println("========================================"); // 将文件名存入数据库 // realPath=realPath+""+fileName; int beginIndex = realPath.lastIndexOf("houtai"); realPath = realPath.substring(beginIndex,realPath.length()); tabExpert.setExt0(realPath.replace("","/")); tabExpert.setExt1(fileName); try { tabExpertSercive.updateTabExpert(tabExpert); msg=tabExpert.getExt0(); ResponseUtil.write(response,msg); jsonObject.put("msg",tabExpert.getExt0()); System.out.println(tabExpert.getExt0()); } catch (Exception e) { // TODO: handle exception jsonObject.put("msg","上传失败!"); }
} /*}*/ }
ResponseUtil.write(response,jsonObject);
} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |