java根据链接下载pdf文件到前台

废话不多说,上代码.

controller层:

    //点击下载pdf 
    @RequestMapping(value = "/downloadPdfSDS",method = RequestMethod.GET)
    @ResponseBody
    public Object download(@RequestParam String urls) throws IOException {
        System.out.println(urls);
        Map<String, Object> map = productPdfService.DownloadSDS(urls);
        Object path = map.get("path");
        Object catalogNo = map.get("catalogNo");
        String downloadUrl = String.valueOf(path);
        URL url = new URL (downloadUrl);//超链接路径 例如 https://file.leyan.com/proPdf/1199258/76410-58-7-S-2-Amino-3-4-boronopheny-COA-Le070578729-Leyan.pdf
        URLConnection uc = url.openConnection();
        final HttpHeaders headers = new HttpHeaders();//设置头信息
        headers.add("Content-Type", "application/pdf");
        headers.add("Content-Disposition", "attachment; filename="+catalogNo+"-SDS"+".pdf");
        return new ResponseEntity<>(IOUtils.toByteArray(uc.getInputStream()), headers, HttpStatus.OK);
    }

前端:

 <a  id="download"  href="#">下载</a>

js:

<script th:inline="javascript" type="text/javascript">
    $(function () {
        var url=document.URL
        var sp1 = url.split("/");
        var sp2 = sp1[sp1.length-1].split(".");
        var sp3 = sp2[0];
        $("#download").attr("href","/downloadPdfSDS?urls="+sp3);

    })
</script>

https://blog.csdn.net/tao111369/article/details/84308917

https://www.jianshu.com/p/40d8388761f3

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中根据链接下载PDF文件可以通过以下步骤实现: 1. 首先,需要使用Java中的URL类来创建一个URL对象,将PDF文件链接作为参数传入。例如,可以使用以下代码创建一个URL对象: `URL url = new URL("https://example.com/example.pdf");` 2. 接下来,需要使用URL对象来建立与PDF文件的连接。可以使用openConnection()方法来获取URLConnection对象,并调用connect()方法来建立连接。例如,可以使用以下代码建立连接: ``` URLConnection connection = url.openConnection(); connection.connect(); ``` 3. 然后,需要使用InputStream来读取PDF文件的内容。可以使用getInputStream()方法来获取与URL连接的输入流。例如,可以使用以下代码获取输入流: `InputStream inputStream = connection.getInputStream();` 4. 接着,可以使用BufferedInputStream来读取输入流中的数据,并将数据写入到本地的PDF文件中。可以创建一个FileOutputStream对象来写入数据。 例如,可以使用以下代码将数据写入到本地文件: ``` FileOutputStream outputStream = new FileOutputStream("output.pdf"); byte[] buffer = new byte[4096]; int bytesRead; while ((bytesRead = inputStream.read(buffer)) != -1) { outputStream.write(buffer, 0, bytesRead); } ``` 5. 最后,记得在下载完成后关闭输入流和输出流,释放资源。可以使用以下代码关闭流: ``` inputStream.close(); outputStream.close(); ``` 通过以上步骤,就可以在Java中根据链接下载PDF文件了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值