2010-06-14 3 views
2

J'ai un problème lorsque je veux afficher une image stockée dans la base de données avec OLE en utilisant JAVA.afficher une image stockée dans la base de données avec Java

+0

Je pense que vous devriez ajouter plus d'informations à votre question: Quel est le problème? Une exception? vous ne savez pas comment le faire? – RonK

+0

oui Je ne sais pas comment afficher l'image de la base de données. – Achraf

+0

Savez-vous comment afficher une image de n'importe quel type? Est-ce le chargement qui est le problème, ou est-ce le «spectacle»? – aioobe

Répondre

2

Si vos données d'image sont stockées dans la base de données que certains blob, vous auriez probablement eu envie d'utiliser un ImageIcon et construire à l'aide du constructeur byte[] imageData:

ImageIcon(byte[] imageData)

Crée un ImageIcon de un tableau d'octets lus à partir d'un fichier image contenant un format d'image pris en charge, tel que GIF, JPEG ou (à partir de 1.3) PNG.

2

Essayer de faire une bonne supposition, je dirais que vous devez le lire à partir de la base de données en utilisant un blob, quelque chose comme:

PreparedStatement pstmt = connection.prepareStatement("SELECT imageblob FROM YOUR_TABLE where id = ?"); 
pstmt.setInt(1, imageId); 
ResultSet rs = pstmt.executeQuery(); 
byte[]data = null; 
while(rs.next()) { 
    data = rs.getBlob(1).getBytes(); 
} 

Et puis l'afficher avec une servlet en écrivant le données au flux de sortie.

.... 

response.setContentType("image/jpg"); 
response.getOutputStream().write(data,0,data.length); 
response.getOutputStream().flush();   

Mais c'est juste une supposition, parce que votre question manque d'informations essentielles.

Voici quelques liens liés à Blob et Servlets

http://www.java2s.com/Code/Java/Database-SQL-JDBC/BlobJDBCdealswithBinaryData.htm

http://java.sun.com/j2se/1.5.0/docs/guide/jdbc/blob.html

http://www.roseindia.net/servlets/retreiveimage.shtml

J'espère que cette aide

Questions connexes