jueves, mayo 22, 2008

Java - Guardar imagen en Base de Datos MySQL o SQL Server

"Si usa algún código del siguiente tutorial, den el icono de ME GUSTA del Facebook que se encuentra en su mano derecha, para que se vuelva Seguidor del Blog y también comentenos que tal les pareció el tutorial"


Muchas veces la gente se pregunta como puedo guarda una imagen en mi Base de Datos que esta en MySQL (tipo de dato BLOB) o en SQL Server (IMAGE), pues aca les presento el metodo de como gurdar una imagen en un servidor de base de datos MySQL o SQL Server

/**
* El preparedStatement tiene como parametros
* 1. Nombre del archivo
* 2. Longitud
* 3. Imagen a guardar
* @param con Conexion con la base de datos
* @param dirArchivo Ubicacion de la imagen
* @param nomArchivo Nombre del archivo
* @param sentenciaSQL Sentecia SQL
* @return Un booleano diciendo si se inserto la imagen
*/
public boolean escribeImagenEnBD(Connection con, String dirArchivo, String nomArchivo, String sentenciaSQL) {
boolean rpta=false;
try {
File fichero = new File(dirArchivo);
FileInputStream streamEntrada = new FileInputStream(fichero);
PreparedStatement pstmt = con.prepareStatement(sentenciaSQL);
int len = streamEntrada.available();
//Nombre del archivo
pstmt.setString(1, nomArchivo);
//longitud de la imagen
pstmt.setInt(2,len);
//Imagen a guardar
pstmt.setBinaryStream(3, streamEntrada, (int)fichero.length());
pstmt.executeUpdate();
pstmt.close();
streamEntrada.close();
rpta=true;
}
catch(Exception e) {
e.printStackTrace();
}
return rpta;
}

7 comentarios:

Gracias man. Me tenia medio prodrido esto con el tema de que no me andaba con setBlob.

Saludos.

Muy Bueno, Me habia trabado en algo, pero por menso, y con esto ya entendi mejor, gracias¡¡¡¡

Gracias, me trave pera ya entendi¡¡¡

Que bueno que te haya servido .. Saludos!

Justo lo que estaba buscando, gracias!

Eres un chucho gracias bro!