// 未分类
springMVC 处理Multipart 类型的请求
发布 2018-09-30 · 永久链接
no excerpt about this article
# springMVC 处理Multipart 类型的请求
处理表单的时候,可能会传过来一个文件。
## 配置multipart解析器
解析器是MultipartResolver的子类,一般使用**standardServletMultipartResolver**就行了。
直接在spring 配置文件里添加
``` xml
```
或者
``` java
@Bean
public MultiPartResolver getMultipartResoler(){
return new StandardServletMultipartResolver();
}
```
## 配置上传的要求
> #web.xml
``` xml
dispatcher
org.springframework.web.servlet.DispatcherServlet
1
D:\
209152
4194304
```
是在DispartcherServlet里面配置,使用**multipart-ocnfig**标签
** location要确保适合,不然上传文件后会因为路径不符合要求报错**
## controller
``` java
@RequestMapping(value = "/upload",method = RequestMethod.POST)
@ResponseBody
public String vallidateRegisterForm(@RequestPart("myfile")MultipartFile file) throws IOException {
file.transferTo(new File(file.getOriginalFilename()));
return "upload success.";
}
```
我们使用了`@RequestPart("myfile")MultipartFile file`, MultipartFile 可以很方便的处理上传后的文件。
这是他的接口定义
``` java
public interface MultipartFile extends InputStreamSource {
String getName();
String getOriginalFilename();
String getContentType();
boolean isEmpty();
long getSize();
byte[] getBytes() throws IOException;
InputStream getInputStream() throws IOException;
void transferTo(File var1) throws IOException, IllegalStateException;
}
```
### 随便写个表单测试一下
``` html
```