Ich habe einige gespeicherte Dateien in einer Datenbank BLOB-Spalte in Oracle 9.Snippet eine Datei aus dem Inhalt eines Blob in Java erstellen
Ich mag würde diese Dateien im Dateisystem gespeichert haben.
Das sollte ziemlich einfach sein, aber ich finde nicht das richtige geschnippelt.
Wie kann ich das in Java tun?
PreparedStatement ptmst = ...
ResutlSet rs = pstmt.executeQuery();
rs.getBlob();
// mistery
FileOutputStream out = new FileOutputStream();
out.write(); // etc et c
Ich weiß es so etwas wie das sein sollte ... was ich nicht weiß, ist das, was als Mistery
Dank kommentiert wird
EDIT
ich endlich hat dies aus Davids Frage abgeleitet.
Dies ist meine faul Implementierung:
PreparedStatement pstmt = connection.prepareStatement("select BINARY from MYTABLE");
ResultSet rs = pstmt.executeQuery();
while(rs.next()) {
Blob blob = rs.getBlob("BINARY");
System.out.println("Read "+ blob.length() + " bytes ");
byte [] array = blob.getBytes(1, (int) blob.length());
File file = File.createTempFile("something-", ".binary", new File("."));
FileOutputStream out = new FileOutputStream(file);
out.write(array);
out.close();
}
Das bringt einige gute alte Erinnerungen mit Oracle XML DB mit Java zurück. – pjp