单文件上传
<!--
文件上传:
1.表单准备:enctype="multpart/form-date"
2.导入jar
3.配置文件中配置文件上传解析器
4.文件上传请求处理
-->
${msg }
<form action="upload" method="post" enctype="multipart/form-data">
用户头像:<input type="file" name="headerimg">
用户:<input type="text" name="username">
<input type="submit" value="提交">
</form>
2.导入jar
3.配置文件中配置文件上传解析器
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="#{1024*1024*2}"></property>
<property name="defaultEncoding" value="UTF-8"></property>
</bean>
4.文件上传请求处理
@RequestMapping("/upload")
public String upload(@RequestParam(value="username",required=false)String username,Model model,
@RequestParam("headerimg")MultipartFile file
) {
System.out.println("上传文件的信息");
System.out.println("文件的名字" +file.getName());
System.out.println("文件的" +file.getOriginalFilename());
try {
file.transferTo(new File("F:\\spring5\\"+file.getOriginalFilename()));
model.addAttribute("msg","文件上传成功");
} catch (Exception e) {
model.addAttribute("msg","文件上传失败"+e.getMessage());
}
return "forward:/index.jsp";
}
结果
多文件上传
import java.io.File;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
@Controller
public class FileUploadAllControllere {
private boolean saveFile(MultipartFile file) {
// 判断文件是否为空
if (!file.isEmpty()) {
try {
// 文件保存路径
file.transferTo(new File("F:\\spring5\\"+file.getOriginalFilename()));
System.out.println("保存成功");
return true;
} catch (Exception e) {
System.out.println("保存失败");
e.printStackTrace();
}
}
return false;
}
@RequestMapping("/upload")
public String filesUpload(@RequestParam("headerimg") MultipartFile[] files) {
//判断file数组不能为空并且长度大于0
if(files!=null&&files.length>0){
//循环获取file数组中得文件
for(int i = 0;i<files.length;i++){
MultipartFile file = files[i];
//保存文件
saveFile(file);
}
}
// 重定向
return "forward:/index.jsp";
}
}
${msg }
<form action="upload" method="post" enctype="multipart/form-data">
用户头像:<input type="file" name="headerimg">
用户头像:<input type="file" name="headerimg">
用户头像:<input type="file" name="headerimg">
用户头像:<input type="file" name="headerimg">
用户:<input type="text" name="username">
<input type="submit" value="提交">
</form>