Java利用FormData实现多文件上传

话不多说,直接上代码:

1、HTML代码:

// 声明file类型为multiple(可多选)


2、js代码:

// 获取文件,用FormData对象封装:
var fd = new FormData();
var length = $("#uploadfiles")[0].files.length;
for (var i = 0; i < length; i++) {
	fd.append("files", $("#uploadfiles")[0].files[i]);
}


// 用ajax发送请求
$.ajax({
	url : 'xxxxx', //填写具体的URL
	type: "post",
	data: fd,
	contentType: false,
	processData: false,
	error : function(){
		error("保存失败");				
	},
	success : function(data){
	}
});

3、后台控制层

// 用MultipartFile[]去接受前台传过来的文件(此时value="files",对应FormData的键值:"files")
@RequestMapping(value = "/xxxxx")
	@ResponseBody
	public String saveFile(HttpServletRequest rq, HttpServletResponse rs,
	@RequestParam(required = false,value = "files")MultipartFile[] multipartFiles)  {
        .............
        //业务逻辑代码
        .............
    }

 

你可能感兴趣的:(前端,后端)