Java & MySQL

aadilove Messages postés 31 Statut Membre -  
supupoff Messages postés 350 Statut Membre -
Bonjour,

Avec Java,je souhaite insérer une image dans une table dans ma base de données MySQL.

NB : le champs où l'image doit Etre insérer est de type BLOB.

Merci de m'aider...

2 réponses

  1. Célien Messages postés 5702 Date d'inscription   Statut Membre Dernière intervention   1 995
     
    Salut,

    Tu sais programmer en Java, JDBC et SQL ? Tu peu commencer par la : FAQ JDBC.
    0
    1. aadilove Messages postés 31 Statut Membre
       
      Merci Célien,,, c'est un bon lien :)
      0
  2. supupoff Messages postés 350 Statut Membre 34
     
     
    // insertion image dans Base de données
     public void imageWrite(File file) {
    try {
    
    FileInputStream io = new FileInputStream(file);
    String query = "insert into image(IMG) values(?)";
    java.sql.PreparedStatement stmt = con.prepareStatement(query);
    stmt.setBinaryStream(1, (InputStream)io,(int)file.length());
    stmt.executeUpdate();
    }
    catch(Exception ex) {
    System.out.println(ex.getMessage());
    }
    }
    
    // lire image depuis base de données
    
    public BufferedImage getImageById(int id) {
    String query = "select IMG from image where IMG_ID = ?";
    BufferedImage buffimg = null;
    try {
    PreparedStatement stmt = con.prepareStatement(query);
    stmt.setInt(1,id);
    ResultSet result = stmt.executeQuery();
    result.next();
    InputStream img = result.getBinaryStream(1); // lire l'image comme un InputStream
    buffimg= ImageIO.read(img); // decodage de  l'inputstream comme BufferedImage
    
    }
    catch(Exception ex) {
    System.out.println(ex.getMessage());
    }
    return buffimg;
    }

    0