

Spring Boot 2.x基础教程:多个文件的上传
source link: http://blog.didispace.com/spring-boot-learning-21-4-4/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

昨天,我们介绍了如何在 Spring Boot中实现文件的上传 。有读者问:那么如果有多个文件要同时上传呢?这就马上奉上,当碰到多个文件要同时上传的处理方法。
动手试试
本文的动手环节将基于 Spring Boot中实现文件的上传 一文的例子之上,所以读者可以拿上一篇的例子作为基础来进行改造,以体会这之间的区别,下面也主要讲解核心区别的地方。
第一步:修改文件上传页面的上传表单
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8" /> <title>文件上传页面 - didispace.com</title> </head> <body> <h1>文件上传页面</h1> <form method="post" action="/upload" enctype="multipart/form-data"> 文件1:<input type="file" name="files"><br> 文件2:<input type="file" name="files"><br> <hr> <input type="submit" value="提交"> </form> </body> </html>
可以看到这里多增加一个input文件输入框,同时文件输入框的名称修改为了files,因为是多个文件,所以用了复数。注意:这几个输入框的name是一样的,这样才能在后端处理文件的时候组织到一个数组中。
第二步:修改后端处理接口
@PostMapping("/upload") @ResponseBody public String create(@RequestPart MultipartFile[] files) throws IOException { StringBuffer message = new StringBuffer(); for (MultipartFile file : files) { String fileName = file.getOriginalFilename(); String filePath = path + fileName; File dest = new File(filePath); Files.copy(file.getInputStream(), dest.toPath()); message.append("Upload file success : " + dest.getAbsolutePath()).append("<br>"); } return message.toString(); }
几个重要改动:
MultipartFile MultipartFile
更多本系列免费教程连载「点击进入汇总目录」
测试验证
第一步:启动Spring Boot应用,访问 http://localhost:8080
,可以看到如下的文件上传页面。
第二步:选择2个不大于2MB的文件,点击“提交”按钮,完成上传。
如果上传成功,将显示类似下面的页面:
你可以根据打印的文件路径去查看文件是否真的上传了。
代码示例
本文的相关例子可以查看下面仓库中的 chapter4-4
目录:
- Github: https://github.com/dyc87112/SpringBoot-Learning/
- Gitee: https://gitee.com/didispace/SpringBoot-Learning/
如果您觉得本文不错,欢迎 Star
支持,您的关注是我坚持的动力!
Recommend
-
40
-
13
编辑导读:文件上传是很多网站常见的一个基础功能,本文跟大家分享,如何用Axure完成文件上传并自动产生列表效果,作者从预览图,到所需原件,再到操作步骤都一一展开了分析,并对过程中需要注意的问题进行了介绍,希望对你有所启发。
-
11
Flask文件上传系列教程 发表回复 文章目录 1、Flask文件上传(一):...
-
5
文件上传的功能实现是我们做Web应用时候最为常见的应用场景,比如:实现头像的上传,Excel文件数据的导入等功能,都需要我们先实现文件的上传,然后再做图片的裁剪,excel数据的解析入库等后续操作。 今天通过这篇文章,我们就来...
-
4
在使用Spring Boot开发应用的时候,你是否有发现这样的情况:自定义属性是有高量背景的,鼠标放上去,有一个 Cannot resolve configuration property 的配置警告。
-
10
前段时间因为团队调整,大部分时间放在了团队上,这系列的更新又耽误了一下。但既然承诺持久更新,那就不会落下,今天开始继续更新这部分的内容! 过了年,重申一下这个系列的目标:目前主要任务就是把Spring Boot 1.x部分没有升级的内容做完升级。我会...
-
4
input框内上传的多个文件,该怎么传送给后台接收?前端代码是这样写的,根据id获取了input内上传的两个文件,随后将一个fileList存进formData内。打印出来这个fileList是有两个F…...
-
7
在如今的关系型数据库中,有两个开源产品是你必须知道的。其中一个是MySQL,相信关注我的小伙伴们一定都不陌生,因为之前的Spring Boot关于关系型数据库的所有例子都是对MySQL来介绍的。而今天我们将介绍另外一个开源关系型数据库:PostgreSQL...
-
6
全栈实战教程:React + Axios + Node.js + Express 搭建「文件上传」管理后台(内附开源代码)前端工程师最近更新 2022年0...
-
10
js上传多个文件到asp.net core,并实时转存到阿里云oss ...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK