resttemplate发送get请求调用接口下载大文件
时间: 2023-11-22 10:53:58 浏览: 105
使用httpclient方式和RestTemplate方式调用http及https接口
使用RestTemplate发送GET请求下载大文件时,需要使用ResponseEntity<InputStreamResource>类型接收返回结果,然后将输入流写入到文件中。
以下是示例代码:
```java
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<InputStreamResource> response = restTemplate.getForEntity(url, InputStreamResource.class);
FileOutputStream outputStream = new FileOutputStream("downloadFile");
int bytesRead;
byte[] buffer = new byte[8192];
while ((bytesRead = response.getBody().read(buffer, 0, buffer.length)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
```
其中,url是下载文件的地址,"downloadFile"是要保存的文件名。在循环中使用8192字节的缓冲区读取输入流,然后将数据写入到文件中。最后,记得关闭输出流。
阅读全文