Когда я пытаюсь загрузить с сервера большой файл размером 260 МБ, я получаю следующую ошибку: java.lang.OutOfMemoryError: Java heap space.
Я уверен, что размер моей кучи меньше 252 МБ. Есть ли способ загрузить большие файлы, не увеличивая размер кучи?
Как я могу загружать большие файлы, не получив этой проблемы? Мой код приведен ниже:
String path= "C:/temp.zip";
response.addHeader("Content-Disposition", "attachment; filename=\"test.zip\"");
byte[] buf = new byte[1024];
try {
File file = new File(path);
long length = file.length();
BufferedInputStream in = new BufferedInputStream(new FileInputStream(file));
ServletOutputStream out = response.getOutputStream();
while ((in != null) && ((length = in.read(buf)) != -1)) {
out.write(buf, 0, (int) length);
}
in.close();
out.close();