Java convertissant une image en un flux d'entrée SANS créer un fichier

Pour une applet, je travaille sur j'ai besoin de convertir un BufferedImage fichier à un flux d'entrée, de sorte que je peux télécharger l'image sur mon serveur MySQL. À l'origine, j'ai été en utilisant ce code:

Class.forName("com.mysql.jdbc.Driver").newInstance();  
Connection connection = 
    DriverManager.getConnection(connectionURL, "user", "pass");  

psmnt = connection.prepareStatement(
    "insert into save_image(user, image) values(?,?)");  
psmnt.setString(1, username);  

ImageIO.write(image, "png", new File("C://image.png")); 
File imageFile = new File("C://image.png");
FileInputStream fis = new FileInputStream(imageFile);

psmnt.setBinaryStream(2, (InputStream)fis, (fis.length()));
int s = psmnt.executeUpdate();

if(s > 0) {
  System.out.println("done");
}

(tout en attraper les exceptions pertinentes) Le code se bloque sur la partie où l'applet tentatives pour enregistrer l'image sur l'ordinateur. Le code a fonctionné parfaitement dans Eclipse ou à chaque fois que j'ai couru l'applet à partir de localhost, donc je suis en supposant que le problème est dans les privilèges que l'applet dans l'enregistrement de fichiers sur l'ordinateur de l'utilisateur.

J'étais juste me demandais si il y avait un moyen de transformer le fichier d'image dans un inputstream sans avoir à enregistrer un fichier sur l'ordinateur de l'utilisateur. J'ai essayé d'utiliser:

ImageIO.createImageInputStream(image);

Mais alors je ne pouvais pas convertir le ImageInputStream retour à une InputStream. Des Suggestions?

Merci!

source d'informationauteur David