1.准备工作
首先要导入相关jar包
在maven下加入依赖
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
不使用maven则手动加入jar包
2.相关关键代码
在SpringMVC配置文件中注册CommonsMultipartResolver类,用于处理上传的文件
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8" />
<property name="maxUploadSize" value="5242880" />
</bean>
写一个方法,用于处理上传操作
@RequestMapping("/fileUpLoad")
public String fileUpLoad(@RequestParam("file") MultipartFile file) throws IOException {
//先判断文件是否为空
if (file.isEmpty()){
return "hello";
}else {
String path = "保存的路径";
//获取上传文件的名字
String filename = file.getOriginalFilename();
File filePath = new File(path, filename);
//判断路径下文件夹是否存在,不存在则先创建
if (!filePath.getParentFile().exists()) {
filePath.getParentFile().mkdirs();
}
file.transferTo(filePath);
}
return "hello";
}
在页面上写上传的form表单
//文件上传method需要设置为post
//enctype设置为"multipart/form-data",表示以二进制方式上传
<form action="请求路径" method="post" enctype="multipart/form-data">
//这里的name需要和Controller方法中的@RequestParam("file")中的value值一致
<input type="file" name="file">
<br>
<input type="submit" value="提交">
</form>
我的另一篇文章,关于文件下载的
点击查看文件下载