springMVC uploadify的应用

来源:互联网 发布:圣诞礼物 知乎 编辑:程序博客网 时间:2024/06/05 02:59
<form><input id="uploadify" name="file" type="file"></input> <ahref="javascript:$('#uploadify').uploadify('upload','*')">上传</a>|<a href="javascript:$('#uploadify').uploadify('cancel')"> 取消上传</a></form><script type="text/javascript">function query2() {var startTime2 = $('#start2').datetimebox('getValue');var endTime2 = $('#end2').datetimebox('getValue');$.ajax({type : 'POST',url : 'dataGrid.do', //用户请求数据的URLdata : {pageNumber : 1,pageSize : 2,//默认先为2start : startTime2,end : endTime2},error : function(XMLHttpRequest, textStatus,errorThrown) {alert(textStatus);},success : function(data) {// alert(data);test = eval("(" + data + ")"); ////转换为json对象//  alert(test);$('#dg').datagrid('loadData', test);}});}$(function() {//默认关闭dialog$('#dlg').dialog('close');});$(function() {$('#uploadify').uploadify({'swf' : '${ctxStatic}/uploadify/uploadify.swf','uploader' : 'upload.do','buttonText' : '浏览','fileTypeDesc' : '添加你要上传的文件','height' : 25,'width' : 70,'auto' : false,'multi' : true,'method' : 'post',//'progressData' : 'speed',//显示进度速度例如:35/kb// 'formData': {pid:'1'},  'fileObjName' : 'file','fileSizeLimit' : '100MB','removeTimeout' : 3,//移除提示成功时间'uploadLimit' : 3,//上传最大限度'fileTypeExts' : '*.*',//允许上传的类型'onQueueComplete' : function(queueData) {alert(queueData.uploadsSuccessful+ '个文件:上传成功!');window.location.reload();}//  ,'onUploadSuccess' : function(file, data, response) {///       alert(file.name +' :上传成功    保存路径为:' + data);// }});});</script>

后台:

@RequestMapping(value = "/upload.do", produces = "text/html; charset=UTF-8")public String upload(HttpServletRequest request, HttpServletResponse response) throws IOException {String responseStr = "";//返回信息MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;Map<String, MultipartFile> fileMap = multipartRequest.getFileMap(); String videoCtxPath=request.getSession().getServletContext().getRealPath("/")+StaticVariable.videoCcwz;//String videoCtxPath = StaticVariable.videoCcwz;// 指定自己的上传路径String ymd = DateUtils.getDate();//获取2013-12-17这种格式videoCtxPath += ymd + "/";// end 创建存储路径// start 创建文件夹FileUtils.createDirectory(videoCtxPath);//创建视频文件夹//File file = new File(ctxPath);//if (!file.exists()) {//file.mkdirs();//}// end 创建文件夹String fileName = null;String path = null;List<String> videoPaths=new ArrayList<String>();//视频存放路径的集合List<String> videoNames=new ArrayList<String>();//视频新名字的集合List<String> imgPahts=new ArrayList<String>();//图片的存放路径集合List<String> imgNames=new ArrayList<String>();//图片新名字的集合List<Long> fileSizes=new ArrayList<Long>();//文件大小的集合List<String> fileNames=new ArrayList<String>();//原本名字的集合for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {             MultipartFile mf = entity.getValue();fileName = mf.getOriginalFilename();// 获得源文件名fileNames.add(fileName);            Long fileSize=mf.getSize();            fileSizes.add(fileSize);//获取文件大小的集合String fileExt = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();String uuid = Identities.uuid();// 返回一个随机UUID。String suffix = fileName.indexOf(".") != -1 ? fileName.substring(fileName.lastIndexOf("."), fileName.length()) : null;String name = fileName.indexOf(".") != -1 ? fileName.substring(0,fileName.lastIndexOf(".")) : null;String newFileName = name + "-" + uuid+ (suffix != null ? suffix : "");// 构成新文件名。// System.out.println(newFileName);// start 创建文件path = videoCtxPath + newFileName;File uploadFile = new File(path);// end 创建文件try {// start 这句是用来在本地创建文件FileCopyUtils.copy(mf.getBytes(), uploadFile);// 这个是spring文件复制方法// end 这句是用来在本地创建文件//start 视频缩略图部分 String imgCtxPath=request.getSession().getServletContext().getRealPath("/")+StaticVariable.imgCcwz;//String imgCtxPath = StaticVariable.imgCcwz;// 指定自己的图片上传路径String imgYmd = DateUtils.getDate();//获取图片的生成日期imgCtxPath += imgYmd + "/";FileUtils.createDirectory(imgCtxPath);//创建图片文件夹java.util.Random r=new java.util.Random(); for(int i=0;i<StaticVariable.imgCount;i++){String imgUuid = Identities.uuid();// 返回一个随机UUID。    ThumbnailTool.processImg(path    ,imgCtxPath+imgUuid+".jpg",""+r.nextInt(200));    imgNames.add(imgUuid+".jpg");//添加图片的名字    }//end 视频缩略图部分videoPaths.add(videoCtxPath);//添加存储地址的集合videoNames.add(newFileName);//添加新的文件名imgPahts.add(imgCtxPath);//添加图片存储地址的集合responseStr = "上传成功";} catch (IOException e) {responseStr = "上传失败";e.printStackTrace();}}request.setAttribute("videoPaths",videoPaths);request.setAttribute("videoNames",videoNames);request.setAttribute("imgPahts",imgPahts);request.setAttribute("imgNames",imgNames);request.setAttribute("fileSizes",fileSizes);request.setAttribute("fileNames",fileNames);return "forward:"+Global.getAdminPath()+"/sites/video/videoSave.do";}


0 0
原创粉丝点击