使用 Java 泽西岛返回文件
我正在使用Java Jersey来实现REST服务。我的服务应该提供的一件事是文件下载选项。这些文件非常大,是从db中的数据构造的。
目前,我正在从数据库中获取所有数据并将其保存到文件中并返回
Response.ok().entity(new FileInputStream(file)).build();
有没有办法在不完全从db下载数据的情况下开始提供文件,但是当数据来自db时,将其附加到输出流?
我正在使用Java Jersey来实现REST服务。我的服务应该提供的一件事是文件下载选项。这些文件非常大,是从db中的数据构造的。
目前,我正在从数据库中获取所有数据并将其保存到文件中并返回
Response.ok().entity(new FileInputStream(file)).build();
有没有办法在不完全从db下载数据的情况下开始提供文件,但是当数据来自db时,将其附加到输出流?
怎么样
File fileToSend = getFile();
return Response.ok(fileToSend, "application/zip").build();
可以将媒体类型设置为与正在发送的文件匹配。
这看起来很直接,但更重要的是,阅读本文的Java专家是否看到了解决方案的性能问题?