SpringBoot项目中文件上传与下载?
2019-09-10 07:09
1681 查看
一、文件上传
@ApiOperation(value = "文件上传", notes= "文件上传") @PostMapping("/upload") public Result upLoadFile(@ApiParam(value = "选择需要上传的文件",required = true) MultipartFile file){ if (file.isEmpty()){ return Result.error(CodeMsg.ERROR); } String fileName = file.getOriginalFilename(); long size = file.getSize(); //控制台打印文件信息 System.out.println(fileName+"-->"+size); //拼接成新的文件名 int index = fileName.indexOf("."); String suffix = fileName.substring(index); String name = Date.valueOf(LocalDate.now())+suffix; //指明文件上传位置 File dest = new File(location, name); //判断文件父目录是否存在 if(!dest.getParentFile().exists()){ dest.getParentFile().mkdir(); } try { //写入文件 file.transferTo(dest); return Result.success(); } catch (IOException e) { e.printStackTrace(); return Result.error(CodeMsg.ERROR); } }
二、文件下载
@ApiOperation(value = "文件下载", notes = "文件下载") @GetMapping("/download") public Result downLoadFile(@ApiParam(value = "填写需要下载的文件") String fileName, HttpServletResponse response){ File file = new File(location, fileName); if(file.exists()){ response.setContentType("application/force-download"); response.addHeader("Content-Disposition", "attachment;fileName=" + fileName); FileInputStream input = null; try{ input = new FileInputStream(file); ServletOutputStream out = response.getOutputStream(); int real; byte[] bytes = new byte[1024]; while((real=input.read(bytes))!=-1){ out.write(bytes, 0, real); } return Result.success(); }catch (Exception e){ e.printStackTrace(); return Result.error(CodeMsg.ERROR); } } return Result.error(CodeMsg.ERROR); }
三、配置文件
spring: servlet: multipart: max-file-size: 100MB #单个文件最大限制 max-request-size: 100MB #总文件上传限制
相关文章推荐
- 【JAVA-OSS】如何在spring-boot项目中使用oss上传下载文件
- Spring Boot文件上传与下载
- SpringBoot下文件上传与下载的实现
- SpringBoot 文件上传和下载的实现源码
- Springboot 第一个项目(网站资源爬取)--练手吧(再弱弱的问一下怎么上传文件?)
- SPRINGBOOT之文件上传与下载
- SpringBoot下文件上传与下载的实现
- SpringBoot后台实现文件上传下载
- SpringBoot 简单文件上传实现以及jar包方式运行项目
- 五、Spring Boot文件上传项目
- springboot项目后台如何限制上传文件大小?
- SpringBoot下文件上传与下载的实现
- SpringBoot文件上传下载和多文件上传(图文详解)
- SpringBoot下文件上传与下载的实现
- SpringBoot项目部署开发环境,Excel模板下载文件损坏,提示恢复问题处理
- SpringBoot文件上传下载和多文件上传(图文详解)
- Springboot 文件上传(多个单个一个方法) 文件下载
- spring boot 实现文件上传和下载,以及多文件上传
- MongodbGFS结合SpringBoot 实现大文件的简单上传与下载
- 使用springboot进行文件上传和下载