数据库(MySql、oracle等)使用Blob数据类型存储图像,java
(1.6)现在支持bmp,jpg, wbmp, png, gif格式的图像。
1从数据库中Blob转为java程序中的Image类实体:
java.sql.Blob blob = rs.getBlob("Logo");
InputStream fin = blob.getBinaryStream();
Image im = javax.imageio.ImageIO.read(fin);
2从数据库中Blob转存为硬盘中的图像文件:
java.sql.Blob blob = rs.getBlob("Logo");
InputStream fin = blob.getBinaryStream();
//用文件模拟输出流File file = new File("d:\\output.gif");
OutputStream fout = new FileOutputStream(file);
//将BLOB数据写入文件byte[] b = new byte[1024];
int len = 0;
while ((len = fin.read(b)) != -1) {
fout.write(b, 0, len);
}
3将磁盘中图像文件存入数据库的BLOB字段中(使用Bytes):
FileInputStream fis = new FileInputStream(“D:\\logo.gif”);
byte[] b = new byte[65000];//限制图像体积小于65KB