今天学习Springmvc 的上传功能,做了一个小例子
基本的SpringMVC MultipartFile 的文件上传
1.配置文件
@Bean
public MultipartResolver multipartResolver(){
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver();
commonsMultipartResolver.setMaxUploadSize(100000);
commonsMultipartResolver.setDefaultEncoding("UTF-8");
return commonsMultipartResolver;
}
其中属性详解:
defaultEncoding="UTF-8" 是请求的编码格式,默认为iso-8859-1
maxUploadSize="100000" 是上传文件的大小,单位为字节
二、创建一个简单的上传页面
<title>Insert title here</title>
</head>
<body>
<div class="upload">
<form action="upload" enctype="multipart/form-data" method="post">
<input type="file" name="file"/>
<input type="submit" value="上传"/>
</form>
</div>
</body>
注意要在form标签中加上enctype="multipart/form-data"表示该表单是要处理文件的,这是最基本的东西,很多人会忘记然而当上传出错后则去找程序的错误,却忘了这一点
三、编写上传控制类
@Controller
public class upLoadController {
@ResponseBody
@RequestMapping(value="/upload" ,method=RequestMethod.POST)
public String upload(MultipartFile file){
try {
FileUtils.writeByteArrayToFile(new File("e:/upload" + file.getOriginalFilename()), file.getBytes());// 文件保存路径
return "ok";
} catch (IOException e) {
e.printStackTrace();
return "wrong";
}
}
}