gpt4 book ai didi

java - Jersey 1.17 下载大文件

转载 作者:太空宇宙 更新时间:2023-11-04 12:28:57 24 4
gpt4 key购买 nike

我想从 REST 服务下载大文件,我有代码:

@GET
@Path("/laboDownloadAnyType")
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response laboDownload() throws FileNotFoundException
{
final String fileName = "SampleVideo_1280x720_50mb.mp4";
final InputStream fileInStream = new FileInputStream(fileName);
return Response.ok(fileInStream, MediaType.APPLICATION_OCTET_STREAM_TYPE)
.header("Content-Disposition", "attachment; filename=\"" + fileName + "\"" ) //optional
.build();
}

当我使用小文件时,它的效果非常好,但现在我想下载大文件(从 500MB 到 3GB),我得到

java.lang.OutOfMemoryError: Java heap space

如何解决这个问题?

最佳答案

使用 MappedByteBuffer 代替 InputStream ,你可以在这里查看 MappedByteBuffer 的实现 Check this link

希望它能为您提供所需的功能。

关于java - Jersey 1.17 下载大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38075005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com