检索在MYSQL DB上存储为BLOB的映像

She*_*don 15 java mysql blob image jdbc

我正在尝试根据驻留在数据库中的信息创建PDF.知道我需要从Java检索作为BLOB存储在mysql数据库中的TIFF图像.我不知道该怎么做.我发现的示例显示了如何检索它并将其保存为文件(但在磁盘上),我需要驻留在内存中.

表名:IMAGENES_REGISTROS

BLOB字段名称:IMAGEN

有任何想法吗?

Boz*_*zho 19

在你的ResultSet电话上:

Blob imageBlob = resultSet.getBlob(yourBlobColumnIndex);
InputStream binaryStream = imageBlob.getBinaryStream(0, imageBlob.length());
Run Code Online (Sandbox Code Playgroud)

或者,您可以致电:

byte[] imageBytes = imageBlob.getBytes(1, (int) imageBlob.length());
Run Code Online (Sandbox Code Playgroud)

正如BalusC在评论中指出的那样,你最好使用:

InputStream binaryStream = resultSet.getBinaryStream(yourBlobColumnIndex);
Run Code Online (Sandbox Code Playgroud)

然后代码取决于您将如何阅读和嵌入图像.

  • 不要使用`ResultSet#getBlob()`或`ResultSet#getBytes()`.只需使用`ResultSet#getBinaryStream()`. (3认同)