Ruoyi实现单文件上传和多文件打包压缩包下载

目录

单文件上传篇

1、html

2、JS

3、Controller

3.1 Global.getProfile()  

3.3.1 JarBasePath.getBaseJarPathStr() 

3.2  FileUploadUtils.upload(filePath, file)   --ruoyi框架自带的

4、Service 和 Xml 就不写了 没什么价值

多文件打包下载压缩包篇

 1、html

2、JS

3、Controller

4、Config --配置文件上传下载本地位置的(搞得我也是昏头转向的)

5、Service 和 xml 就不写了,没什么价值


单文件上传篇

1、html

<!--    注意,这个文件的上传和下载功能一定要放在一个form里方便处理-->
    <form class="form-horizontal m" id="form-checkCarPhoto-show" th:object="${CarPhoto}">
      <input id="id" name="id" th:field="*{id}"  type="hidden">
<!--      单文件上传按钮-->
      <input id="filePath" name="filePath" class="form-control" type="file">
      <a class="btn btn-success btn-xs " href="#" onclick="uploadFile()"><i class="fa fa-edit"></i>单文件上传</a>
<!--      多文件打包下载按钮-->
      <a class="btn btn-success btn-xs " href=&#
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RuoYi 框架中实现文件下载可以通过以下步骤进行: 1. 在控制器中定义一个方法来处理文件下载请求。可以使用`@RequestMapping`或`@GetMapping`等注解来匹配请求的URL。 2. 创建一个`File`对象,指定要下载文件的路径。 3. 使用`InputStreamResource`将文件包装成输入流的形式。 4. 设置响应的内容类型和头信息,以告知浏览器下载文件。 5. 将文件输入流写入响应的输出流中,完成文件下载。 下面是一个简的示例代码: ```java @Controller @RequestMapping("/file") public class FileController { @GetMapping("/download") public ResponseEntity<InputStreamResource> downloadFile() throws IOException { String filePath = "/path/to/your/file"; // 替换为实际的文件路径 File file = new File(filePath); HttpHeaders headers = new HttpHeaders(); headers.add("Content-Disposition", "attachment; filename=" + file.getName()); InputStreamResource resource = new InputStreamResource(new FileInputStream(file)); return ResponseEntity.ok() .headers(headers) .contentType(MediaType.APPLICATION_OCTET_STREAM) .body(resource); } } ``` 在上述示例中,我们使用`File`类来指定要下载文件路径,然后创建一个`InputStreamResource`来将文件包装成输入流形式。接下来,我们设置响应的内容类型为`application/octet-stream`,并设置响应头信息中的`Content-Disposition`来告知浏览器下载文件。最后,将文件输入流写入响应的输出流中,返回`ResponseEntity`对象。 记得替换示例代码中的文件路径为你实际的文件路径。当访问`/file/download`时,就会触发文件下载操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值