转自:
SpringMVC中如何使用注解的方式实现文件上传呢?
一、form表单注意事项
上传文件所处的表单,表单必须使用以下属性
enctype=”multipart/form-data” method=“POST”
二、applicationContext.xml中必须使用以下设置
<bean id=”multipartResolver”
class=”org.springframework.web.multipart.commons.CommonsMultipartResolver”
/>
三、导入相应的JAR包
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
例:
页面
<form action="uploadURL" method="post" enctype="multipart/form-data">
<input type="file" name="fileName">
<button type="submit">提交</button>
</form>
Controller文件
@RequestMapping("uploadURL")
public String upLoad(HttpServletRequest request,MultipartFile fileName) throws Exception {
String originalFilename = fileName.getOriginalFilename();
String path= request.getSession().getServletContext().getRealPath("/upload");
//上传图片
if(fileName!=null && originalFilename!=null && originalFilename.length()>0){
//存储图片的物理路径
String pic_path = path+"/";
//新的图片名称
String newFileName = UUID.randomUUID() + originalFilename.substring(originalFilename.lastIndexOf("."));
//新图片
File newFile = new File(pic_path+newFileName);
//将文件写入硬盘中
fileName.transferTo(newFile);