Скачать файл, хранящийся в BLOB-объекте, в базе данных sql - PullRequest
0 голосов
/ 03 августа 2020

Как я могу загрузить файл, который загружается через сервлет и сохраняется как массив байтов в большом двоичном объекте (MySQL DB)?

Я уже пробовал один пример, но этот пример требует, чтобы я установить тип файла (например, .pdf), и я хочу, чтобы он автоматически распознавался при загрузке, если это папка PDF или ZIP-compressed et c.

Кто-нибудь знает, как я мог сделать это?

Я пробовал использовать что-то вроде этого:

Blob blob = rs.getBlob(column);
InputStream in = blob.getBinaryStream();
OutputStream out = new FileOutputStream(someFile);
byte[] buff = new byte[4096];  // how much of the blob to read/write at a time
int len = 0;

while ((len = in.read(buff)) != -1) {
    out.write(buff, 0, len);
}

источник: { ссылка }

Мне нужно установить someFile, но именно здесь я должен указать тип файла, и я хотел бы, чтобы он распознавался автоматически.

...