文章目录
一、文件上传三要素

<form action="${pageContext.request.contextPath}/user/quick21" method="post" enctype="multipart/form-data">
名称<input type="text" name="username"><br>
文件<input type="file" name="upload"><br>
<input type="submit" value="提交">
</form>
二、文件上传原理

三、单文件上传步骤

1.导入fileload和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.11.0</version>
</dependency>
2.配置文件上传解析器
<!--配置文件上传解析器-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<property name="maxInMemorySize" value="500000"></property>
</bean>
3.编写文件上传代码
@RequestMapping(value = "/quick21")
@ResponseBody
public void save21(String username, MultipartFile upload) throws IOException {
System.out.println(username);
String originalFilename = upload.getOriginalFilename();
upload.transferTo(new File("F:\\upload\\"+originalFilename));
}
四、多文件上传
1.方式一
<form action="${pageContext.request.contextPath}/user/quick22" method="post" enctype="multipart/form-data">
名称<input type="text" name="username"><br>
文件<input type="file" name="upload"><br>
文件<input type="file" name="upload1"><br>
<input type="submit" value="提交">
</form>
@RequestMapping(value = "/quick22")
@ResponseBody
public void save22(String username, MultipartFile upload,MultipartFile upload1) throws IOException {
System.out.println(username);
String originalFilename = upload.getOriginalFilename();
upload.transferTo(new File("F:\\upload\\"+originalFilename));
String originalFilename1 = upload1.getOriginalFilename();
upload.transferTo(new File("F:\\upload\\"+originalFilename1));
}
2.方式二(数组)
<form action="${pageContext.request.contextPath}/user/quick23" method="post" enctype="multipart/form-data">
名称<input type="text" name="username"><br>
文件<input type="file" name="upload"><br>
文件<input type="file" name="upload"><br>
<input type="submit" value="提交">
</form>
@RequestMapping(value = "/quick23")
@ResponseBody
public void save23(String username, MultipartFile[] upload) throws IOException {
System.out.println(username);
for (MultipartFile multipartFile : upload) {
String originalFilename = multipartFile.getOriginalFilename();
multipartFile.transferTo(new File("F:\\upload\\"+originalFilename));
}
}
五、知识要点
