SpringMvc file upload and download

一个新手
Release: 2017-10-09 10:11:19
Original
1462 people have browsed it

1. First import the jar package:

2. Then, add the upload and download configuration files in applicationContext.xml, as follows:


          error   
Copy after login

3. Okay, the most basic configuration is enough. Next, the jsp page: upload.jsp


1 
2 文件1:
3 文件2:
4 文件3:
5 6
Copy after login

4. Controller The corresponding java code in:

@RequestMapping("/upload.do") public String upload(@RequestParam MultipartFile[] myfiles,HttpServletRequest request) throws IOException { for(MultipartFile file : myfiles){ //此处MultipartFile[]表明是多文件,如果是单文件MultipartFile就行了 if(file.isEmpty()){ System.out.println("文件未上传!"); } else{ //得到上传的文件名 String fileName = file.getOriginalFilename(); //得到服务器项目发布运行所在地址 String path1 = request.getSession().getServletContext().getRealPath("image")+File.separator; // 此处未使用UUID来生成唯一标识,用日期做为标识 String path = path1+ new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())+ fileName; //查看文件上传路径,方便查找 System.out.println(path); //把文件上传至path的路径 File localFile = new File(path); file.transferTo(localFile); } } return "uploadSuccess"; }
Copy after login

This way you can upload the selected pictures on the web page.

The download was successful!

5. File download download.jsp: For testing purposes here, I directly passed the username as a parameter:


下载
Copy after login

6. Controller:


@RequestMapping("/download") public String download(String fileName, HttpServletRequest request, HttpServletResponse response) { response.setCharacterEncoding("utf-8"); response.setContentType("multipart/form-data"); response.setHeader("Content-Disposition", "attachment;fileName=" + fileName); try { String path = request.getSession().getServletContext().getRealPath ("image")+File.separator; InputStream inputStream = new FileInputStream(new File(path + fileName)); OutputStream os = response.getOutputStream(); byte[] b = new byte[2048]; int length; while ((length = inputStream.read(b)) > 0) { os.write(b, 0, length); } // 这里主要关闭。 os.close(); inputStream.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } // 返回值要注意,要不然就出现下面这句错误! //java+getOutputStream() has already been called for this response return null; }
Copy after login

The above is the detailed content of SpringMvc file upload and download. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!