springMVC 多文件上传

xiaoxiao2021-02-28  43

jsp页面

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>多文件上传</title> </head> <body> <div style="margin: 0 auto;margin-top: 100px;"> <form action="moreUpload.html" method="post" enctype="multipart/form-data"> <p> <span>文件1:</span> <input type="file" name="imageFile1"> </p> <p> <span>文件2:</span> <input type="file" name="imageFile2"> </p> <p> <input type="submit" value="提交"> </p> </form> </div> </body> </html> Controller方法

@RequestMapping("moreUpload") public String moreUpload(HttpServletRequest request){ MultipartHttpServletRequest multipartHttpServletRequest =(MultipartHttpServletRequest) request; Map<String,MultipartFile> files = multipartHttpServletRequest.getFileMap(); //获取图片上传路径 String uploadUrl = request.getSession().getServletContext().getRealPath("/")+"upload/"; File dir = new File(uploadUrl); if(!dir.exists()){ dir.mkdirs(); } List<String> fileList = new ArrayList<String>(); for (MultipartFile file : files.values()){ File targerFile = new File(uploadUrl+file.getOriginalFilename()); if(!targerFile.exists()){ try { targerFile.createNewFile(); } catch (IOException e) { e.printStackTrace(); } try { file.transferTo(targerFile); fileList.add("upload/"+file.getOriginalFilename()); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } request.setAttribute("files", fileList); return "moreUploadResult"; } 结果页面

<%@page import="org.apache.jasper.tagplugins.jstl.core.ForEach"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>多文件上传</title> </head> <body> <h1>多文件上传成功</h1> <div style="margin: 0 auto;margin-top: 100px;"> <ul> <c:forEach items="${files}" var="file"> <li> <a > <img alt="图片" src="${file}"> </a> </li> </c:forEach> </ul> </div> </body> </html>

转载请注明原文地址: https://www.6miu.com/read-74535.html

最新回复(0)