加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

SpringMVC+uploadify3.2.1版实现附件上传功能

发布时间:2020-05-24 20:01:02 所属栏目:Java 来源:互联网
导读:SpringMVC+uploadify3.2.1版实现附件上传功能

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

$(function(){
$("#file_upload").uploadify({
'auto':false,//是否允许自动上传
'swf':'../uploadify/uploadify.swf?var='
+(newDate()).getTime(),//引入flash
'buttonText':'',//设置button文字
'width':'120',//按钮宽度
'method':'PSOT',//提交方式
'multi':'true',//是否多文件上传
'fileObjName':'myFile',//文件对象名称,用于后台获取文件对象时使用
'preventCaching':'true',//防止浏览器缓存
'formData':{'emergencyId':1111},//动态传参
'queueID':'custom-queue','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){
varData=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();
},});

});
//上传附件
MultipartHttpServletRequestmultipartRequest=
(MultipartHttpServletRequest)request;
MultipartFilefile=multipartRequest.getFile("myFile");

//获取服务器地址
ServletContextsc=request.getSession().getServletContext();
//附件存放服务器路径
Stringdir=sc.getRealPath("/upload/yingjiwuzhi/");

//如果文件夹不存在,则创建文件夹
if(!newFile(dir).exists()){
newFile(dir).mkdirs();
}

StringfileName=file.getOriginalFilename();
StringrealName=fileName.substring(0,fileName.indexOf("."));
//防止文件被覆盖,以纳秒生成文件名称
Long_l=System.nanoTime();
String_extName=fileName.substring(fileName.indexOf("."));
fileName=_l+_extName;

StringuploadPath=request.getContextPath()+
"/upload/yingjiwuzhi/"+fileName;
//存储格式为:/项目名/upload/yingjiwuzhi/43038800303864.log
//存储到数据库的相对路径


StringresponseStr="";
try{

FileUtils.writeByteArrayToFile(newFile(dir,fileName),file.getBytes());//服务器中生成文件
responseStr="上传成功";

}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
responseStr="上传失败";
}
//删除服务器上的附件
//获取服务器地址
ServletContextsc=request.getSession().getServletContext();
//项目名称
StringprojectName=request.getContextPath();

StringannexId=request.getParameter("annexId");
StringemergencyId=request.getParameter("emergencyId");

//附件路径存储格式为:/项目名/upload/yingjiwuzhi/43038800303864.log
StringannexPath=request.getParameter("path");

if(!"".equals(annexPath)&&annexPath!=null){
Stringpath=annexPath.replace(projectName,"");
StringfilePath=sc.getRealPath(path.trim());

Filefile=newFile(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");
}
}

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读