Recently in doing a small project encounter this problem solution as follows
The 1.js code below gets the current form converted to FormData Ajax submission to the background var form = $ ("#importForm"); var formData =new FormData ($scope. _window.find ("# Importform ")); $.ajax ({ type:" POST ", data:formdata, processdata:false, contenttype:false, URL: $scope. webpath.p0path+ "/cps-p0-web/importpiccontroller/importpickticket", success:function (data) { Alert ("Upload successful"); }, exception:function (data,textstatus) { } });
Background Code parsing
@ResponseBody @RequestMapping (value= "/importpickticket") PublicResponsemodel Importpickticket (httpservletrequest request,httpservletresponse response)throwsbussinessexception{Responsemodel Responsemodel=NewResponsemodel (); Try{
Save file after uploading file String FilePath=fileupload.fileupload (request, response); responsemodel.setsuccess (true); }Catch(bussinessexception e) { }Catch(Exception e) {
}
return NULL; } return NULL; }
FileUpload Code
Public classFileUpload { Public StaticString fileUpload (httpservletrequest request, httpservletresponse response) {Try {//File Server nameStringBuffer rename =NewStringBuffer ();//ServletContext ServletContext =request.getsession (). Getservletcontext ();//Get Server save pathString Pathurl = Servletcontext.getrealpath (Propertyplaceholder.getproperty ("Fileuploadpath"). toString ());//Parser Parses the context of the requestCommonsmultipartresolver Multipartresolver =NewCommonsmultipartresolver (ServletContext);//first, determine if the request includes data of type multipartif(Multipartresolver.ismultipart (Request)) {//then convert the data in request to the multipart type of dataMultiparthttpservletrequest multirequest =(multiparthttpservletrequest) request;//Get file nameIterator<string> iter =multirequest.getfilenames (); while(Iter.hasnext ()) {Multipartfile file=multirequest.getfile (String) Iter.next ());if(File! =NULL) {rename.append (NewRandom (). Nextint (99999)). Append ("_"). Append (System.currenttimemillis ()). Append (File.getoriginalfilename ()); File LocalFile=NewFile (Pathurl + "/" +rename.tostring ());//write files to localFile.transferto (LocalFile); }}}returnPathurl + "/" +rename.tostring ();} Catch(Exception e) {Throw NewBussinessexception ("FileUpload.fileUpload.BusinessException", E); }}}
Springmvc uploading files using AJX does not set form Enctype