Preciso de uma ajuda para resolver o seguinte problema:
Eu tenho armazenada em uma tabela no banco de dados(oracle) informações de um determinado individuo, uma das colunas armazena a foto (esse campo é do tipo Blob). Bom, o que eu quero fazer é pegar esse dado(foto) e jogar em um java.awt.Image.
Bem, apos pegar o InputStream do ResultSet, basta fazer algo como:
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(new FileInputStream(f)); // a partir dos bytes que vem do banco você gera esse objeto direito
BufferedImage image =decoder.decodeAsBufferedImage() ;
[quote=LIPE]Bem, apos pegar o InputStream do ResultSet, basta fazer algo como:
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(new FileInputStream(f)); // a partir dos bytes que vem do banco você gera esse objeto direito
BufferedImage image =decoder.decodeAsBufferedImage() ;
byte[] b = new byte[ 50 ]; // pega os bytes do banco
ByteArrayInputStream ba = new ByteArrayInputStream( b );
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( ba );
BufferedImage image = decoder.decodeAsBufferedImage();
Graphics g = image.getGraphics();
ba.close();
Isso talvez sirva como base para uma solução melhor. Não seja preguiçoso
E, aliás, por que está usando blob? Para ter que ficar tratando SQLException a toa em todo lugar?
byte[] b = new byte[ 50 ]; // pega os bytes do banco
ByteArrayInputStream ba = new ByteArrayInputStream( b );
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( ba );
BufferedImage image = decoder.decodeAsBufferedImage();
Graphics g = image.getGraphics();
ba.close();
Isso talvez sirva como base para uma solução melhor. Não seja preguiçoso
E, aliás, por que está usando blob? Para ter que ficar tratando SQLException a toa em todo lugar?
Bons estudos.[/quote]
Valeu Lipe…deixa eu queimar uns neurônios!!! Agora em relação ao “Blob”, eu estou usando ele devido ao campo na tabela ser desse tipo, eu não conheço outras maneiras para se manipular esse tipo de informação…muito inexperiente ainda…