ARCmop Java Programacion Solaris Linux

Java-linux-programacion

Java: Recuperar Imagen desde Base de Datos Mysql

Posted by Cmop en mayo 22, 2010

Hola, con el post anterior expliqué como guardar una imagen en una Base de datos Mysql, pues resulta que un compañero me planteó la pregunta ¿y cómo la recupero desde la BD?, recordé que para esta faena me tomé un poco de tiempo.

Así que aquí coloco el código, que permite recuperar una imagen desde una base de datos Mysql.

Éste método recoge la imagen desde la BD y devuelve la imagen lista para usar.

import java.awt.Image;
import java.io.IOException;
import java.sql.Blob;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public Image abrirImagen() throws SQLException, IOException
 {
 Image rpta=null;
 String sql = "SELECT * FROM imagen limit 1";
 //En este ejemplo solo recupero la primera Imagen
 java.sql.Statement stmt = conexion.createStatement();
 ResultSet results = stmt.executeQuery(sql);

 Blob imagen=null;
 while(results.next())
    Blob imagen = results.getBlob("Imagen");

 rpta= javax.imageio.ImageIO.read(imagen.getBinaryStream());
 //Esta parte es clave, donde se convierte a imagen
  return rpta;
 }

Espero haber ayudado con este post, y nos vemos. Saludos a todos.

Actualización: Video demostrativo

 

12 comentarios to “Java: Recuperar Imagen desde Base de Datos Mysql”

  1. toto said

    esta muy bueno el ejemplo, pero podria subir el codigo del programa que sale en el video? el que pinta la imagen en el panel

  2. Christian said

    Buenas Cesar, o el que escribio este programa muy bueno, solo que para desplegar la imagen en la aplicacion tengo problemas, porque lo estoy haciendo en un metodo privado y con try y catch y se me genera errores, he intentado muchas formas pero no encuentro la solucion, te agradeceria que me contestas, alguien gracias

  3. mickey said

    y luego como muestro la imagen o que show con ella?

  4. francisco said

    Podrian subir el código del ejemplo????????????????????????????

  5. abraham said

    oye se puede usar el mismo código para un archivo pdf???

  6. Marco Antonio Cuba Villena said

    Hola..
    hee muy buena tu informacion muchas gracias era lo que estaba buscando
    un favor me podrian pasar el proyecto de su video ..
    de antemano Gracias

  7. Alex said

    sta bueno. se puede hacer esto en JSP? yo quiero que se guarde en un directorio no en BD. pero desde un formulario.. como seria.. Gracias

  8. Carlos said

    Hola
    tu ejemplo esta muy bueno
    pero como seria en un celular en J2ME
    Gracias

  9. f3zman said

    Y como le hago para mostrarlo en el label????

    • Efrain Alvarez said

      try {
      ResultSet res = ldao.getImagen(equipo);

      if (res.next()) {

      Image i;
      Blob blob = res.getBlob(“imagen”);
      i = javax.imageio.ImageIO.read(blob.getBinaryStream());
      ImageIcon image = new ImageIcon(i);
      image = new ImageIcon(image.getImage().getScaledInstance(
      this.lblImagen.getWidth(),
      this.lblImagen.getHeight(),
      Image.SCALE_DEFAULT));
      lblImagen.setIcon(image);

      }

  10. Efrain Alvarez said

    Que gran ejemplo, mucho tiempo buscandolo y lo encontreee, gracias

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: