JDBC:从 MySQL 检索 BLOB 图像并将其存储在内存中
数据库 BLOB 字段存储二进制数据,包括图像。本文介绍如何使用 Java 检索并保存以 BLOB 形式存储在内存中的 MySQL 数据库中的图像,从而避免将其保存到磁盘。
JDBC BLOB 检索
要检索 BLOB 图像,请在 ResultSet 对象上使用 getBlob() 方法,并指定 BLOB 字段的列索引。这将返回表示图像数据的 Blob 对象。
Blob imageBlob = resultSet.getBlob(yourBlobColumnIndex);
访问图像数据
Blob 对象提供访问图像数据的方法。可以使用以下代码选项:
getBinaryStream(): 将 InputStream 返回到图像的二进制数据流。
InputStream binaryStream = imageBlob.getBinaryStream(0, imageBlob.length());
getBytes(): 返回一个数组表示图像的字节数。
byte[] imageBytes = imageBlob.getBytes(1, (int) imageBlob.length());
请注意,您还可以直接使用 ResultSet 对象中的 getBinaryStream() 方法以流形式访问图像数据。
InputStream binaryStream = resultSet.getBinaryStream(yourBlobColumnIndex);
将图像存储在内存中
图像数据现在可以作为流或字节数组进行访问,可以在内存中进行处理或存储。这一步的具体代码取决于您的需求以及镜像的后续使用。
以上是如何使用 Java 从 MySQL 中检索 BLOB 图像并将其存储在内存中?的详细内容。更多信息请关注PHP中文网其他相关文章!