Sei que essa quest�o ja foi discutida na
lista, mas n�o de forma clara, geralmente indic�o links que n�o mostr�o nada que
ajude realmente...
Consegui inserir um imagem no Oracle 8i, com o
c�digo que segue a baixo, mas nada al�m de 4000 bytes.....Ser� que existe algu�m
nessa lista que tenha um exemplo , de como eu possa inserir imagens de qualquer
tamanho em um banco Oracle8i, e depois recuperala atrav�s de meu aplicativo
Java.
/*
* gravaBlob.java
*
*/
* gravaBlob.java
*
*/
import java.sql.*;
import java.net.*;
import java.io.*;
import java.net.*;
import java.io.*;
public class gravaBlob extends Object
{
private File file;
private long fileLength;
private InputStream fin;
private Connection conn1;
private PreparedStatement stmt1;
/** Creates new gravaBlob */
public gravaBlob() {
String arq = new String("c:\\Teste\\Mesagem.jpg");
try {
file = new java.io.File(arq);
fileLength = file.length();
fin = new java.io.FileInputStream(file);
//Blob blob;
byte [] foto = new byte[Integer.valueOf(String.valueOf(fileLength)).intValue()];
//blob.setBytes(0,foto);
System.out.println(arq + ": " + fileLength + " bytes. " + fin.read(foto) + " bytes lidos");
Class.forName(oracle.jdbc.driver.OracleDriver);
conn1 = DriverManager.getConnection(jdbc:oracle:thin:@IP:BANCO,"nome","senha");
private File file;
private long fileLength;
private InputStream fin;
private Connection conn1;
private PreparedStatement stmt1;
/** Creates new gravaBlob */
public gravaBlob() {
String arq = new String("c:\\Teste\\Mesagem.jpg");
try {
file = new java.io.File(arq);
fileLength = file.length();
fin = new java.io.FileInputStream(file);
//Blob blob;
byte [] foto = new byte[Integer.valueOf(String.valueOf(fileLength)).intValue()];
//blob.setBytes(0,foto);
System.out.println(arq + ": " + fileLength + " bytes. " + fin.read(foto) + " bytes lidos");
Class.forName(oracle.jdbc.driver.OracleDriver);
conn1 = DriverManager.getConnection(jdbc:oracle:thin:@IP:BANCO,"nome","senha");
stmt1 = conn1.prepareStatement("INSERT INTO sisti.chamado_arquivos_t(id_chamado_arquivo,id_chamado,arquivo,imagem,rowversion) VALUES (?,?,?,?,?)");
stmt1.setString(1,"3");
stmt1.setString(2,"864");
stmt1.setString(3,"c:\\Teste\\Mesagem.jpg");
stmt1.setBytes(4,foto);
//stmt1.setBlob(4,blob);
stmt1.setString(5,"3");
stmt1.executeUpdate();
stmt1.close();
conn1.close();
System.out.println("Fim do processo.");
}
catch(Exception e) {
System.out.println(e);
}
}
public static void main (String args[]) {
new gravaBlob();
}
}
