Image java

Résolu
Talbi - 21 janv. 2014 à 16:20
 WANGI - 25 janv. 2014 à 01:52
Bonjour,

je veux stocker des images sous Mysql, et puis les afficher dans mon programme java, (je fais une gestion des étudiants). est ce que vous pouvez m'aider s'il vous plait.

2 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
21 janv. 2014 à 16:39
Bonjour,

Quel est le souci rencontré ?

NB : Il est préférable, pour des questions de performance, de ne pas stocker directement les images en BDD mais uniquement leur chemin.
-> Tu créer un dossier Images
-> Dans ta BDD.. pour chaque image tu donnes un ID, un Nom, le chemin vers le répertoire où elle se trouve.


NB2 : Pour obtenir plus d'aide concernant ta demande... merci de respecter la charte du site et donc de donner un maximum d'informations sur les difficultés rencontrées et les tests que tu as effectué avant d'appeler au secours...

Je t'invite à lire les liens suivants:
http://codes-sources.commentcamarche.net/contents/11-charte-de-commentcamarche-net-conseils-d-ecriture

http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

http://codes-sources.commentcamarche.net/forum/affich-1557761-bar-sujet-de-pfe-tp-et-autres-devoirs-scolaires#top

.
1
Placer un label nommé le par jlphoto et un bouton appelé importer.

Placez comme action dans le bouton:

JFileChooser fc= new JFileChooser();
fc.setFileFilter(new FileNameExtensionFilter("Image JPEG, PNG ou GIF", "jpg", "gif", "png"));
fc.setFileSelectionMode(JFileChooser.FILES_ONLY);
int result = fc.showOpenDialog(this);
if (JFileChooser.OPEN_DIALOG == result) {
if ( fc.getSelectedFile().length() < 8000000) {
CheminPhoto = fc.getSelectedFile().getAbsolutePath();
jlphoto.setIcon(new ImageIcon(CheminPhoto));

} else {
JOptionPane.showMessageDialog(this, "La taille maximale de la photo est 2 Mo, "
+ "veuillez choisir une autre photo", "Attention", JOptionPane.WARNING_MESSAGE);
}//fin getSelectedFile
}

N'est pas oublier d'importer
import javax.swing.filechooser.FileNameExtensionFilter;
import java.sql.Blob;

NB Les images sous MYSQL sont du type blob et on ne precise pas la taille.
Exemple: photo blob comme champs dans une table

Pour enregistrer, le code java a utilisé est:


//création d'un fichier une image
File monImage = new File(cheminPhoto);
FileInputStream istreamImage = new FileInputStream(monImage);

//affectation des valeurs

PreparedStatement prepare=null;
String requete="insert into table (photo)values(?)";

prepare=con.prepareStatement(requete);
prepare.setBinaryStream(1, istreamImage, (int) monImage.length());

prepare.executeUpdate();
prepare.close()

Ir Eric WANGI NGOY
0
Rejoignez-nous