spring学习——springmvc(二)

Spring MVC提供了非常方便的文件上传功能。

1,配置Spring支持文件上传:

DispatcherServlet本身并不知道如何处理multipart的表单数据,需要一个multipart解析器把POST请求的multipart数据中抽取出来,这样DispatcherServlet就能将其传递给我们的控制器了。为了在Spring中注册multipart解析器,需要声明一个实现了MultipartResolver接口的Bean。选择multipart解析器其实很简单,因为Spring只提供了一个CommonMultipartResolver。它的配置如下:

<bean id="multipartResolver" 
         class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
         p:maxUploadSize="5000000"/>

 2,接收上传的文件:

@RequestMapping(method=RequestMethod.POST)
	public String addImg( @RequestParam MultipartFile image) throws IOException{
	
        String path = "D:\\john\\project\\paytool\\src\\main\\webapp\\resources\\img";
	File f = new File(path+"/"+image.getOriginalFilename());
	FileUtils.copyInputStreamToFile(image.getInputStream(), f);
		
	return "redirect:/user/img";
	}

 path是想要存放图片的路径。

3,在表单上添加文件上传域:

<sf:form method="post" modelAttribute="user" enctype="multipart/form-data">
    <h3>选择需要上传的图片:</h3>
    <input type="file" name="image">
</sf:form>

 这样一个简单的文件上传就完成了。

你可能感兴趣的