@up7

Можно ли принятый через сокет файл записать в бд?

Сабж. Принимаем файл (сервер), как-то так:

byte[] buffer = new byte[64*1024];
                    FileOutputStream outF = new FileOutputStream(fileName);
                    int count, total = 0;                 
                    while ((count = din.read(buffer)) != -1){               
                        total += count;
                        outF.write(buffer, 0, count);                 
                        if(total == fileSize){
                            break;
                        }
                    }

Так он у нас получается или на диске или в потоке. Как его в базу то сунуть? Туплю с утра (

То есть каким образом к нему получить доступ для засовывания в базу? И можно ли потом обратно его клиенту будет отдать, если извлечь из бд?
  • Вопрос задан
  • 75 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Чаще всего файл сохраняют на диск, а в базу "засовывают" только путь к нему. Но в некоторых случаях имеет смысл хранить принятые данные целиком в БД, для этого используйте BLOB'ы.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы