网站建设资讯

NEWS

网站建设资讯

JFinal中怎么使用ajaxfileupload实现图片上传功能

今天就跟大家聊聊有关JFinal中怎么使用ajaxfileupload实现图片上传功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

创新互联专注于企业成都营销网站建设、网站重做改版、安塞网站定制设计、自适应品牌网站建设、成都h5网站建设商城系统网站开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为安塞等各大城市提供网站开发制作服务。

1.前端jsp页面核心代码

<%=request.getContextPath() %>/media/file/${banner.img}"  id="imgsrc"/>

function ajaxFileUpload(fileEid, paramdata){ if(typeof(paramdata)=='undefined') paramdata = {}; var $file=$('#'+fileEid).val(); if($file=='') {alert("请先选择对应的上传文件,谢谢"); return;} $.ajaxFileUpload({  url:'<%=request.getContextPath()%>/banner/uploadpic',  secureuri:false,  fileElementId:fileEid,  dataType: 'text',  data:paramdata,  success: function (result){   var result = result.substring(result.indexOf("{"),result.indexOf("}")+1);   result = eval("("+result+")");   if(result.t==1){    $("#imgsrc").attr("src","<%=request.getContextPath() %>/media/file/"+result.msg);    $("#imgurl").val(result.msg);   }else{    alert("上传失败");   }  } });}

2.后台核心代码

public void uploadpic(){ UploadFile upfile = getFile();//JFinal规定getFile()必须最先执行 File file = upfile.getFile(); String filename = file.getName(); String delfilename = filename; if(filename!=null && !filename.equals("")){  filename = new SimpleDateFormat("yyyyMMddkkmmss").format(new Date())+filename;  /**   * 新保存的位置   */  String path = getRequest().getSession().getServletContext()    .getRealPath("/");  String newPath = "/media/file/";//自定义目录 用于存放图片  /**   * 没有则新建目录   */  File floder = new File(path + newPath);  if (!floder.exists()) {   floder.mkdirs();  }  /**   * 保存新文件   */  FileInputStream fis = null;  FileOutputStream fos = null;  try{   File savePath = new File(path + newPath + filename);   if(!savePath.isDirectory()) savePath.createNewFile();   fis = new FileInputStream(file);   fos = new FileOutputStream(savePath);   byte[] bt = new byte[300];   while (fis.read(bt, 0, 300) != -1) {    fos.write(bt, 0, 300);   }  }catch(Exception e){   e.printStackTrace();  }finally{   try{    if(null!=fis) fis.close();    if(null!=fos) fos.close();   }catch(Exception e){    e.printStackTrace();   }  }  /**   * 删除原图片,JFinal默认上传文件路径为 /upload(自动创建)   */  File delFile = new File(path+"/upload/"+delfilename);  if(delFile.exists()){   delFile.delete();  }  setAttr("msg",filename);  setAttr("t",1); }else{  setAttr("t",0); } renderJson();}

附:ajaxfileupload.js代码

jQuery.extend({ createUploadIframe: function(id, uri) {  //create frame  var frameId = 'jUploadFrame' + id;  var iframeHtml = '