Foros del Web » Programación para mayores de 30 ;) » Java »

Imágenes en tiempo de ejecución en un JLabel desde mysql tipo Blob

Estas en el tema de Imágenes en tiempo de ejecución en un JLabel desde mysql tipo Blob en el foro de Java en Foros del Web. He probado ya infinidad de códigos sin éxito. Parto de la base de que debo insertar las imágenes en el JLabel a través del método ...
  #1 (permalink)  
Antiguo 10/12/2011, 05:24
Avatar de Mahalo  
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
Imágenes en tiempo de ejecución en un JLabel desde mysql tipo Blob

He probado ya infinidad de códigos sin éxito. Parto de la base de que debo insertar las imágenes en el JLabel a través del método setIcon. Sin embargo no sé qué objeto tengo que pasarle: he probado File, BufferedImage, FileOutputStream, y algún otro.
Desde la bbdd leo así:
Código Java:
Ver original
  1. Blob bytesImagen = resultSet.getBlob(1);
  2. InputStream inputStream = bytesImagen.getBinaryStream();
¿Pueden echarme una mano?
Saludos!
__________________
Los ignorantes se empeñan en enseñar. Los sabios en aprender.
SourceForge
  #2 (permalink)  
Antiguo 11/12/2011, 13:34
Avatar de Mahalo  
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
Respuesta: Imágenes en tiempo de ejecución en un JLabel desde mysql tipo Blob

Me respondo yo mismo.
Código Java:
Ver original
  1. public ImageIcon getImagen(int id) {
  2.   ImageIcon imageIcon = null;
  3.   String sql = "SELECT imagen FROM tabla WHERE id=" + id;
  4.   ResultSet resultSet = SQLQuery(sql);
  5.   try {
  6.     while (resultSet.next()) {
  7.       Blob bytesImagen = resultSet.getBlob(1);
  8.  
  9.       byte[] bytesLeidos = bytesImagen.getBytes(1, (int) bytesImagen.length());
  10.       imageIcon = new ImageIcon(bytesLeidos);
  11.     }
  12.   } catch (SQLException e) {
  13.     System.out.println(e.getMessage());
  14.   }
  15.   return imageIcon;
  16. }
Luego se llama con setIcon() de JLabel a esta función.
Saludos!
__________________
Los ignorantes se empeñan en enseñar. Los sabios en aprender.
SourceForge

Etiquetas: blob, jlabel, mysql, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:15.