Я пишу настольный клиент Java, который будет отправлять по серверу несколько файлов по запросу.В сервлете я получаю поток ввода из запроса на получение файлов.Сервлет будет записывать файлы на диск один за другим по мере их чтения из потока.
Реализация имеет несколько требований:
- Должен быть только один HTTP-запросиспользуется для сервера (поэтому только один поток)
- Сервлет должен использовать разумный фиксированный объем памяти, независимо от размера файлов.
Я рассмотрел вопрос о вставкемаркеры в поток, так что я знаю, когда заканчивается один файл и начинается следующий.Затем я написал бы некоторый код для анализа потока в сервлете и начал бы записывать следующий файл соответствующим образом.
Вот в чем дело ... конечно, есть библиотека для этого.Я просмотрел Apache Commons и ничего не нашел.Загрузка файла Commons интересна, но поскольку загрузка происходит из приложения Java, а не из браузера, она решает только принимающую сторону, а не отправку.
Любые идеи для библиотеки, которая позволяет легко передавать несколько файлов через один поток.с фиксированными ожиданиями памяти даже для очень больших файлов?
Спасибо.