PostgreSQL
jdbc文档的第7章介绍了如何存储二进制数据并使用图像(* .gif文件)作为示例。您可能想要阅读它。
将图像插入数据库(通过上面的链接)
File file = new File("myimage.gif");FileInputStream fis = new FileInputStream(file);PreparedStatement ps = conn.prepareStatement("INSERT INTO images VALUES (?, ?)");ps.setString(1, file.getName());ps.setBinaryStream(2, fis, (int)file.length());ps.executeUpdate();ps.close();fis.close();从数据库(也从上面的链接)读取图像
// Get the Large Object Manager to perform operations withLargeObjectManager lobj = ((org.postgresql.PGConnection)conn).getLargeObjectAPI();PreparedStatement ps = conn.prepareStatement("SELECT imgoid FROM imageslo WHERe imgname = ?");ps.setString(1, "myimage.gif");ResultSet rs = ps.executeQuery();while (rs.next()) { // Open the large object for reading int oid = rs.getInt(1); LargeObject obj = lobj.open(oid, LargeObjectManager.READ); // Read the data byte buf[] = new byte[obj.size()]; obj.read(buf, 0, obj.size()); // Do something with the data read here // Close the object obj.close();}rs.close();ps.close();


