使用Java Spring RestTemplate上传大型二进制文件

我有一个servlet,它能够接收二进制数据[文件].

我想使用Spring的RestTemplate()将大型二进制文件上传到servlet.但是,无法将二进制文件完全加载到内存中.

到目前为止,我的尝试导致OutOfMemory错误,表明方法一直在尝试将整个文件加载到内存中.

如何将此二进制数据流式传输到servlet?优选在Spring或Java中.

最佳答案
找到答案:

https://jira.springsource.org/browse/SPR-7909



SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
requestFactory.setBufferRequestBody(false);
RestTemplate rest = new RestTemplate(requestFactory);

这可以防止将整个请求加载到内存中.

转载注明原文:使用Java Spring RestTemplate上传大型二进制文件 - 代码日志