SpringBoot如何实现单文件与多文件上传功能
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,这篇文章将为大家详细讲解有关SpringBoot如何实现单文件与多文件上传功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.单文件上传首先创建一个Spring
千家信息网最后更新 2024年11月22日SpringBoot如何实现单文件与多文件上传功能
这篇文章将为大家详细讲解有关SpringBoot如何实现单文件与多文件上传功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
1.单文件上传
首先创建一个Spring Boot
项目,并添加spring-boot-starter-web
依赖
然后创建一个upload.jsp
文件,做一个简单的文件上传页面,具体代码如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>Title
上传接口是wjsc/upload
,注意请求方法是post
,enctype
是multipart/form-data
然后创建上传文件接口:
@RequestMapping("/wjsc")@RestControllerpublic class UploadController { /** * 文件上传 */ @PostMapping("/upload") //MultipartFile接受前台传过来的文件 public String upload(MultipartFile uploadFile,HttpServletRequest req){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd/"); //设置上传文件的保存路径为项目运行目录下的uploadFile文件夹 String realPath = req.getSession().getServletContext().getRealPath("/uploadFile/"); //获取当前日期对所上传的文件进行归类保存 String format = sdf.format(new Date()); File folder = new File(realPath+format); if (!folder.isDirectory()){//判断是否为目录 folder.mkdirs();//不是目录就创建目录 } //给上传的文件重命名 String oldName = uploadFile.getOriginalFilename();//获取文件名称 String newName = UUID.randomUUID().toString()+oldName.substring(oldName.lastIndexOf("."),oldName.length());//设置新文件名 try{ //文件保存操作 uploadFile.transferTo(new File(folder,newName)); //生成文件访问路径 String filePath = req.getScheme()+"://"+req.getServerName()+":"+req.getServerPort()+"/uploadFile/"+format+newName; return filePath; }catch (Exception e){ e.printStackTrace(); } return "上传失败"; }}
注意:MultipartFile变量名命名要与jsp中上传文件的name一致,不然会接收不到文件
最后测试:
运行项目,在浏览器中访问upload.jsp
页面进行文件上传
上传成功后会返回文件访问路径,用这个路径就可以访问到刚刚上传的图片
项目中也可以看到刚刚上传的图片成功了
至此,一个简单的单文件上传就完成了.
2.多文件上传
多文件上传和单文件上传基本一致,首先修改jsp文件,代码如下:
<
%@ page contentType="text/html;charset=UTF-8" language="java" %>Title
然后修改上传文件接口:
/** * 多文件上传 */ @PostMapping("/uploads") public String uploads(MultipartFile[] uploadFiles,HttpServletRequest req) { //遍历uploadFiles数组分别储存 }
控制器里边的核心逻辑和单文件上传是一样的,只是多一个遍历的步骤。
关于"SpringBoot如何实现单文件与多文件上传功能"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
文件
目录
路径
项目
接口
篇文章
功能
一致
成功
代码
图片
更多
页面
运行
不错
实用
内容
前台
变量
只是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何防护网络服务器安全
亚马逊中国服务器
2021年网络安全的图片
数据库作业如何建
其他软件开发工具
yarn前端项目部署到服务器
大学学网络安全专业好找工作吗
格罗网络技术
中药有效成分数据库
如何招聘数据库开发
浪潮服务器u盘装系统
ibm服务器上的mem灯亮
换sql数据库
同花顺数据库使用方法
itu网络安全指数
google 邮件服务器
香港恒通网络技术有限公司
光线传媒软件开发
数据库去掉换行
数据库 3nf分解
阿里云峰会数据库技术
北京龙芯服务器在哪买
身边的网络安全文章
yarn前端项目部署到服务器
衢州erp软件开发
网络安全宣全周
超聚变华为服务器
怎么找网络安全 项目
温州藩冬网络技术工作室
台州金融软件开发公司