Avatar billede thinge Nybegynder
11. november 2005 - 18:49 Der er 9 kommentarer og
1 løsning

Fra BLOB(MYSQL) til IMAGE

Jeg har lagt et billede i database(blob).
Nu vil jeg gerne hente billedet igen, uden at oprette en fil, altså direkte til et billede.

thinge
Avatar billede arne_v Ekspert
11. november 2005 - 18:57 #1
BLOB --(rs.getBytes)--> byte[] --(ByteArrayInputStream & ImageIO.read)--> BufferedImage

måske
Avatar billede thinge Nybegynder
11. november 2005 - 19:36 #2
klasse
Avatar billede arne_v Ekspert
11. november 2005 - 20:03 #3
du har fået det til at virke ?
Avatar billede thinge Nybegynder
11. november 2005 - 20:19 #4
Ja og Nej

Før sendte jeg billede-filen over netværket til min klient. Der var billedet stadig pænt. Nu sender jeg byte[] til klienten, og så skal jeg lige love for det blev grimt.

Men det med blob til BufferedImage virker fint.
Send dit svar så giver jeg dine point

thinge
Avatar billede arne_v Ekspert
11. november 2005 - 20:21 #5
ok
Avatar billede arne_v Ekspert
11. november 2005 - 20:22 #6
hvorfor bliver det grimmere af at blive sendt som byte[] ?
Avatar billede thinge Nybegynder
14. november 2005 - 07:31 #7
jeg ved det virkelig ikke.
Avatar billede arne_v Ekspert
14. november 2005 - 14:30 #8
hvis du beskriver lidt mere evt. et demo eksempel så kan vi måske hjælpe
Avatar billede thinge Nybegynder
18. november 2005 - 12:10 #9
På serverside:
mana.setPicture(((ManaViewRow)getRow()).getPicture().getBytes());
// bytes bliver sat i objectet mana.
// Dernæst bliver det sendt til Klienten.

Klientside:
I en cellrender
Vector costs = (Vector)value;
    image = new BufferedImage(25, 25, BufferedImage.TYPE_INT_RGB);
    JPanel panel = new JPanel();
    panel.setBackground(Color.WHITE);
    for(int q = 0; q < costs.size(); q++){
      Mana mana = (Mana)costs.elementAt(q);
      ByteArrayInputStream i = new ByteArrayInputStream(mana.getPicture());
      try{
      image = ImageIO.read(i);
      }
      catch(Exception x){
        x.printStackTrace();
      }
      //image = ImageIO.read();
      ImageIcon icon = new ImageIcon(image);
      JLabel label = new JLabel(icon);
      panel.add(label);
Avatar billede thinge Nybegynder
18. november 2005 - 17:22 #10
problemmet er løst. Jeg løste det forkert ud af DB
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester