步骤如下:
1> 导包:commons-fileupload-1.2.2.jar、commons-io-2.4.jar
2> 在添加页面表单中添加一个文件上传域
3> 修改UserController的add()方法以接收上传的文件
4> 在Spring中配置multipart文件处理器
--------------------------------------------------------------------------------------------------------------------------
1。如果项目用了maven,则在pom.xml中需要配置。io包在你项目中其他地方可能用到过可以不配。
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.2.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
2。页面内容 一定要配置 enctype="multipart/form-data";name属性名和实体类User的属性一致,如果是 多文件上传则写多个<input type="file" name="attachs" value="">即可。
<form action="addsave" enctype="multipart/form-data" method="post" >
UserName:<input type="text" name="uName" value=""><br/>
password:<input type="text" name="psd" value=""><br/>
email:<input type="text" name="email" value=""><br/>
attach:<input type="file" name="attachs" value=""><br/>
<input type="submit" value="save">
</form>
3。Controller代码如下:
@RequestMapping(value="addsave",method=RequestMethod.POST)
public String addSave(User user,@RequestParam MultipartFile[] attachs,HttpServletRequest request){
//指定上传位置 tomcat/webapps/项目名/upload 文件夹下
String realPath = request.getSession().getServletContext().getRealPath("/upload");
System.out.println("realPath--->"+realPath);
for(MultipartFile attach : attachs){
if(!attach.isEmpty()){
File file = new File(realPath+File.separatorChar+attach.getOriginalFilename());
try {//copy
FileUtils.copyInputStreamToFile(attach.getInputStream(), file);
} catch (IOException e) {
e.printStackTrace();
}
}
//System.out.println("上传的文件名--->"+attach.getOriginalFilename());
//System.out.println("长传的文件类型)--->"+attach.getContentType());
}
4。在sping配置文件中需要配置multipart文件处理器,maxUploadSize属性表示限制文件上传最大容量,如下为5MB
<!-- file upload: CommonsMultipartResolver -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="5000000"/>
<property name="defaultEncoding" value="UTF-8"/>
</bean>
文件下载功能:参考这个连接http://blog.csdn.net/wjycgl/article/details/55509480