SpringBoot 实现批量文件上传|学习笔记

简介: 快速学习 SpringBoot 实现批量文件上传

开发者学堂课程【SpringBoot 实战教程 SpringBoot 实现批量文件上传】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/651/detail/10809


SpringBoot 实现批量文件上传


1、在之前的工程中添加 html 页面选择三个文件

文件1: <input type="file" name="file" />

</p>

<p>

文件2: <input type="file" name="file" />

</p>

<p>

文件3: <input type="file" name="file" />

</p>

<p>

提交的地址是 upload/batch提交方式是post同样是 form-data 类型

form method= "POST" enctype= "multipart/form-data "

2、在 UploadController.java 中输入

@RequestMapping (" /upload/batch")路径和 html 上保持一致

@ResponseBody 返回上传成功或者上传失败字符串类型

public String uploadFiles (MultipartFile [ ]file, HttpServletRequest request)名字也要保持一致只不过需要改成数组

//便利数组把每一个文件生成相应的服务器名称再进行上传

@Controller

public class UploadController {

@RequestMapping (value="/upload/batch" , method=RequestMethod. POST)

@ResponseBody

public string uploadFile (MultipartFile[] file,HttpServletRequestrequest) 改成数组形式

{

Try{

//创建文件在服务器端的存放路径

String dir=request.getServletContext().getRealPath(" /upload") ;

File fileDir=newFile (dir) ;

if(! fileDir .exists () )

fileDir .mkdirs () ;

/ /生成文件在服务器端存放的名字数组名加下标

for(int i=0; i<file.length; i++){  做循环便利即可每循环一次就是要上传的文件

String fileSuffix=file[1].getOriginalFilename (). substring (file[1].getOriginalFilename () . lastIndexOf ("."));

String fileName=UUID. randomUUID() . toString() +fileSuffix;

File files =newFile(fileDir+‘’/‘’+fileName)

//上传

file[1]. transferTo (files)写入到服务器端每一个名字都要生成服务器端的名称

}

}catch ( Exceptione){

e.printStackTrace () ;

Return’’上传失败’’;

}

Return’’上传成功’’;

}

}

3、进行批量上传首先显示 html 页面还需要再写一个 controllercontroller 的作用是转到这个页面上

@RequestMapping("/ indexs")

public String toUploads()

{

return "uploads" ;

}

4、启动成功访问 localhost:8080/indexs出现批量上传的页面可以上传三个文件点击上传上传成功

image.png

5、查看服务器端可以看到多了三个文件这就是批量上传的实现

image.png

相关文章
|
6月前
|
存储 安全 Java
Spring Boot整合Spring Security--学习笔记
Spring Boot整合Spring Security--学习笔记
100 1
|
JSON 前端开发 Java
【SpringBoot学习笔记 十一】深入理解SpringBoot异常处理
【SpringBoot学习笔记 十一】深入理解SpringBoot异常处理
439 0
|
Dubbo Java 测试技术
【SpringBoot学习笔记 十二】SpringBoot异步任务、定时任务、邮件任务
【SpringBoot学习笔记 十二】SpringBoot异步任务、定时任务、邮件任务
145 0
|
前端开发 Java 开发者
【SpringBoot学习笔记 九】SpringBoot定制整合Thymeleaf及页面国际化(下)
【SpringBoot学习笔记 九】SpringBoot定制整合Thymeleaf及页面国际化(下)
162 0
|
移动开发 前端开发 JavaScript
【SpringBoot学习笔记 九】SpringBoot定制整合Thymeleaf及页面国际化
【SpringBoot学习笔记 九】SpringBoot定制整合Thymeleaf及页面国际化
101 0
|
存储 安全 算法
Java:SpringBoot整合Spring Security实现认证与授权学习笔记
Java:SpringBoot整合Spring Security实现认证与授权学习笔记
615 0
Java:SpringBoot整合Spring Security实现认证与授权学习笔记
|
JSON Java 应用服务中间件
SpringBoot 学习笔记之 “异常处理”
SpringBoot 学习笔记之 “异常处理”
|
Java
java202304java学习笔记第五十八天员工管理-Aop基础-springboot配置优先级2
java202304java学习笔记第五十八天员工管理-Aop基础-springboot配置优先级2
81 0
|
Java
java202304java学习笔记第五十八天员工管理-Aop基础-springboot配置优先级1
java202304java学习笔记第五十八天员工管理-Aop基础-springboot配置优先级1
65 0
java202304java学习笔记第五十八天员工管理-springboot-自动配置概述
java202304java学习笔记第五十八天员工管理-springboot-自动配置概述
63 0
下一篇
无影云桌面