J'ai des fichiers stockés dans une colonne de blob de base de données Oracle 9.Snippet pour créer un fichier à partir du contenu d'un blob en Java
Je voudrais avoir les fichiers stockés dans le système de fichiers.
Cela devrait être assez facile, mais je ne trouve pas le droit coupé.
Comment puis-je faire cela en Java?
PreparedStatement ptmst = ...
ResutlSet rs = pstmt.executeQuery();
rs.getBlob();
// mistery
FileOutputStream out = new FileOutputStream();
out.write(); // etc et c
je sais que ce doit être quelque chose comme ça ... ce que je ne sais pas est ce qui est commenté comme mistery
Merci
EDIT
J'ai finalement eu ceci dérivé de la question de David.
Ceci est ma mise en œuvre paresseuse:
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();
}
Cela ramène quelques bons vieux souvenirs en utilisant Oracle XML DB avec Java. – pjp