关于SpingMVC上传文件的方法

一般情况下,上传文件总是在表单中直接提交到后台,后台接收文件对象后再处理。但是,这样一般会页面跳转了!要达到异步上传,少不了用ajax了,很多ajax封装了优秀的上传控件,这里重点介绍SpringMVC用ajaxfileupload.js控件上传文件的方法,有不足之处还望阅者见谅以及赋予见解。

HTML页面:

 <input type="file" name="file" id="fileUpload" />
注意:name="file"中的file要与接收文件的属性名称一致

JS:

 data = {
			"personId":60,//与之关联的人员的id(不可省略)
			"fileId":"fileUpload",//要上传图片文件的type="file" 的id名称(不可省略)
			"photoPath":"来源于..",//(可省略)
			"description":"图片真漂亮"//(可省略)
		}
 $.ajaxFileUpload({
	   url: appPath+"/common/saveImageToByte?personId="+personId+"&photoPath="+photoPath+"&description="+description,  //一个表单出来文件之外的其他要保存的数据
	   secureuri: false, //是否安全提交
	   fileElementId: data.fileId,//type=file的input的id
	   dataType: "json", //返回值类型
	   success: function(data) { //config 即整个json参数
	    alert("保存图片成功!");
	   },
	   error: function() { //服务响应失败处理函数
		   alert("保存图片请求出错");
	   }
 });

java后台代码:

 class ImageEntity{
	private long id;
	private long personId;
	private CommonsMultipartFile file;//用来接收file
	private String photoPath;
	private String description;
	//setter
	//getter
 }
 @RequestMapping(value = "/saveImage", method = RequestMethod.POST)
 public void saveImage(ImageInFoVO imageInFoVO,HttpServletResponse response){
	CommonsMultipartFile file = ImageEntity.getFile();//获得客户端文件对象
 }

这样就可以获得file了!之后想干嘛干嘛!

猜你喜欢

转载自blog.csdn.net/zhao_zhengZZ/article/details/50386508