SpringMvc中的文件上传
1.添加相应的依赖
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
2.对配置文件进行设置
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize">
<value>104857600</value>
</property>
<property name="maxInMemorySize">
<value>4096</value>
</property>
</bean>
3.创建FileController类
@Controller
public class FileController {
@RequestMapping("upload")
public String uploadFile(HttpServletRequest request){
MultipartHttpServletRequest mhrs= (MultipartHttpServletRequest) request;
MultipartFile mf=mhrs.getFile("file");
if(null!=mf&&mf.getSize()>0){
//获取项目所在的地址(绝对lujing)
String basepath=request.getSession().getServletContext().getRealPath("/");
File upload=new File(basepath+"/upload");
if(!(upload.exists())){
//文件夹不存在 创建
upload.mkdir();
}
//设置文件名称,系统当前时间毫秒数 命名上传文件
// getOriginaFilename() 文件原始命名
String filename = System.currentTimeMillis()+mf.getOriginalFilename().substring(mf.getOriginalFilename().lastIndexOf("."));
//复制文件
try {
mf.transferTo(new File(upload,filename));
request.setAttribute("msg","文件上传成功");
} catch (IOException e) {
e.printStackTrace();
request.setAttribute("msg","文件上失败");
}
}else {
request.setAttribute("msg","文件上失败");
}
return "result";
}
}
4.前端页面的简单编写
<html>
<head>
<title>文件上传测试</title>
</head>
<body>
<form action="upload" method=post enctype="multipart/form-data">
<input type="file" name="file"/>
<button type=submit>提交</button>
</form>
</body>
</html>