当前位置: 首页 > 知识库问答 >
问题:

使用Spring RestFul服务下载文件

汲雅珺
2023-03-14

我想从网站上下载一份PDF。PDF需要在代码中生成,我认为这是freemarker和像iText这样的PDF生成框架的组合。还有更好的办法吗?

然而,主要的问题是,我不知道如何允许用户通过Spring控制器下载文件?

共有1个答案

濮阳原
2023-03-14
@RequestMapping(value = "/downlaod/{fileName}", method = RequestMethod.GET)
public void getFile(
    @PathVariable("fileName") String fileName, 
    HttpServletResponse response) {
    try {

      InputStream is = ...;  // get uploaded file using InputStream 

      org.apache.commons.io.IOUtils.copy(is, response.getOutputStream());      // copy this to response's OutputStream
      response.flushBuffer();
    } catch (IOException ex) {
      log.info("Error writing file to output stream. Filename was '{}'", fileName, ex);
      throw new RuntimeException("IOError to writing file on output stream");
    }

}

如果你有回应。getOutputStream(),您可以在其中写入所需内容。您已将此输出流作为放置生成的PDF的位置传递。您还可以设置

回答setContentType(“应用程序/pdf”);

 类似资料:
  • 问题内容: 嗨,我有一堆.mp3文件,我想与NSFileManager一起使用并存储在documents文件夹中。有没有一种方法可以在线下载.mp3文件,然后将其保存到documents文件夹?这就是我正在使用的本地文件。 问题答案: 编辑/更新: Xcode 11.5•Swift 5.2 原始答案 Xcode 8.3.2•Swift 3.1

  • 问题内容: 在我的Java应用程序中,我正在使用以下方法从服务器下载文件。 但是此下载非常慢。我该如何快速? 问题答案: 从Java 7开始,您可以下载具有以下内置功能的文件: 对于早期版本,从Java 1.4到Java 6的解决方案是 此代码将URL内容传输到没有任何第三方库的文件。如果仍然很慢,那您就知道这不是附加库的问题,很可能不是Java的问题。至少您在这里没有什么可以改善的。因此,您应该

  • 问题内容: 我正在使用jsch从服务器下载文件,下面是我的代码。 com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2629) at com.jcraft.jsch.ChannelSftp._get(ChannelSftp.java:977) at com.jcraft.jsch.ChannelSftp.get(Channe

  • 问题内容: 我想从使用安全连接协议HTTPS的服务器下载文件。我可以在普通服务器上进行操作,但是,如何使用HTTPS进行操作。如果有人使用了示例API,请帮助我找到有用的资源。 问题答案: 与Java访问HTTPS URL相同,然后访问HTTP URL。您可以随时使用 但是,当无法验证服务器的证书链时,您可能会遇到一些问题。因此,出于测试目的,您可能需要禁用证书验证并信任所有证书。 为此,请写:

  • 问题内容: 我需要将文件从服务器下载到桌面。(UBUNTU 10.04)我没有Web访问服务器,只是ssh。 如果有帮助,我的操作系统是Mac OS X和iTerm 2作为终端。 问题答案: 在您的终端中,键入: 相应地替换用户名,主机,远程文件名和本地目录。 如果要访问EC2(或其他需要使用私钥进行身份验证的服务),请使用以下选项:

  • 本文向大家介绍使用Feign实现微服务间文件下载,包括了使用Feign实现微服务间文件下载的使用技巧和注意事项,需要的朋友参考一下 在使用Feign做服务间调用的时候,当下载大的文件会出现堆栈溢出的情况。另外,文件管理服务(服务提供者)文件下载接口无返回值,是通过HttpServletRespoonse传输的流数据来响应,那么服务消费者该如何接受下载的数据呢? 一. 示例介绍 我们调用feign_