前端代码
<script> //------------------上传封面图 start function checktext(){ var f=document.getElementById("lefile").value;//获取input type="file"的值 if(f=="") { alert("请上传图片");return false;} else if(!/\.(jpg)$/.test(f)) { alert("图片类型必须是jpg格式") return false; } else{ return true; } } function uploadtext(file){ if(!checktext()){return;} else { var prevDiv = document.getElementById('preview'); var docObj=document.getElementById("lefile"); var fileObj = docObj.files[0]; // 获取文件对象 var FileController ="${BASE_PATH}/portal/works/picUpload";// 接收上传文件的后台地址 var form = new FormData();//form 对象 form.append("pic_title",fileObj);// 文件对象 $.ajax({ type: "POST", url: FileController, data:form, processData: false, contentType: false, success: function(data){ var pathValue=data.path; var message=data.message; $("#picture").val(pathValue);//图片在数据库的存储路径 $("#preview").attr("src",pathValue); //设置图片回显 alert(message); } }); } } //------------------上传封面图 end </script>
<div class="col-sm-3"> <input id="lefile" type="file" style="opacity:0;" οnchange="uploadtext(this)" > <div class="input-append"> <div id="localImag"> <a class="btn" οnclick="$('input[id=lefile]').click();"><img id="preview" style="width:178px;height:178px" src="${BASE_PATH}/static/image/uploads-files-pic11111.png"></a> <input type="hidden" id="picture" value="" name="picture"> </div> </div> <h4>封面</h4> <p>(jpg图片格式:240*240px)</p> </div>
后台代码 public void picUpload(){ String path="upload/kindeditor/".trim(); String base=this.getRequest().getContextPath().trim();//应用路径 UploadFile picFile=getFile("pic_title");//得到 文件对象 String fileName=picFile.getFileName(); String mimeType=picFile.getContentType();//得到 上传文件的MIME类型:audio/mpeg if(!"image/gif".equals(mimeType) && !"image/jpeg".equals(mimeType) &&!"image/x-png".equals(mimeType) &&!"image/png".equals(mimeType)){ setAttr("message","上传文件类型错误!!!"); renderJson(); return ; } String realpath = getSession().getServletContext().getRealPath(path); String lastName = fileName.substring(fileName.lastIndexOf(".")); // 获取文件的后缀 String newName=UUID.randomUUID().toString()+lastName; String filepath=base+"/"+path+newName.trim(); picFile.getFile().renameTo(new File(realpath+"/"+newName)); /*Response res=BaseUpload.upload(picFile.getFile().getPath(), fileName, QiniuConfig.BUCKET_NAME); System.err.println(QiniuConfig.WEBSITE+"\\"+fileName); setAttr("path",QiniuConfig.WEBSITE+"\\"+fileName);*/ setAttr("path",filepath); setAttr("message","上传成功!"); renderJson(); return; }