简介
我在使用 idea 上传文件时遇到一些问题,费了好些时间,最后还是的队友来帮忙。
问题出现在没有熟练使用 IDE,采用 SpringMVC 上传文件主要注意几个事项。
1. 配置 bean
在 web-servlet.xml 文件中,增加一个 bean 处理文件上传:
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
p:defaultEncoding="UTF-8"
p:maxUploadSize="10485760"
p:uploadTempDir="WEB-INF/upload/temp"/>
同时要在 webroot 文件夹下的WEB-INF下建立upload/temp目录。
2. jsp 页面
<form method="post" action="${context}/yu1/upload.html" enctype="multipart/form-data">
<input type="text" name="name" />
<input type="file" name="upfile" />
<input type="submit" />
</form>
注意enctype要为multipart/..形式,否则可能上传不了。
3. 控制器
@RequestMapping("/user/upload")
public String updateThumb(@RequestParam("name") String name,
@RequestParam("file") MultipartFile file)throws Exception{
if(!file.isEmpty()){
file.transferTo(new File("E:/团队项目/集合/temp/"+file.getOriginalFilename()));
return "redirect:success.html";
}else{
return "redirect:fail.html";
}
}
路径“E:/团队项目/集合/temp/”是上传文件的临时存储路径。
4. 手动创建目录
记得在 targe(项目打包)下的WEB-INF下新建upload/temp目录。
这个步骤最关键,否则文件上传不上去。
上传的文件都到这里啦!!
5. 总结
IDEA 这个编辑器还是挺智能的, 如果一个文件夹下什么东西都没有的话, 编译后是没有这个文件夹的, 这时候就要自己在相应的目录下新建文件夹。用好IDE,开发更快。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。