|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 4 ![]() |
Bonjour,
Je voulais savoir si il est possible de mettre un objet dans une base de données. Par objet, j'entend par exemple un classe JAVA. Ceci m'éviterai de devoir transformer mon objet en chaîne de caractère pour le mettre dans la base de données et de devoir le retransformer en le récupérant. Merci d'avance. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 4 ![]() |
Merci pour ta réponse
|
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Étudiant Inscription : juillet 2006 Messages : 242 ![]() |
Salut !
Tu peux sûrement le faire en utilisant le type BLOB pour la colonne. Il faut ta classe soit Serializeable aussi, mais ça je pense que tu dois déjà le savoir.
__________________
La vitesse de la lumière étant supérieure à la vitesse du son, certaines personnes brillent encore tant qu'elles n'ont pas parlé ----------------------------------------------------------- Retrouvez mes articles informatique sur mon Site Developpez. Le reste, sur le Site perso ! |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : février 2006 Messages : 953 ![]() |
Sinon il y a JDO, dans le genre rendre des objets java persistants avec une BDD. Après si c'est pour un seul objet, sérialiser est peut-être suffisant.
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 4 ![]() |
Merci pour ce complément d'information, je vais essayer tout de suite.
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : juillet 2006 Messages : 4 ![]() |
Me revoila,
J'arrive à mettre mon objet avec : int retour=requete.executeUpdate("INSERT INTO essai VALUES("+envoi.hashCode()+")"); Mais quand je le récupére avec ça : try{ ResultSet resultat = requete.executeQuery("SELECT * FROM essai"); if (resultat.first()){ do{ Object objet = resultat.getObject("objet"); System.out.println(objet.getClass().getName()); if (objet instanceof ObjetDB){ ObjetDB objetDB = (ObjetDB) objet; System.out.println("nom : "+ objetDB.getNom()); System.out.println("prénom : "+ objetDB.getPrenom()); System.out.println("telephone : "+ objetDB.getTelephone()+"\n"); } }while(resultat.next()); } }catch(SQLException SQLE){ System.out.println("Cause : "+SQLE.getMessage()); System.exit(0); } J'ai bien mis nom objet en Serializable, mais lorsque je regarde le nom de la classe c'est incompréhensible. Alors où est-ce que j'ai échoué. Merci. |
|
|
00
|
|
|
#8 |
![]() Inscription : juillet 2002 Messages : 537 ![]() |
Désolé de te le dire, mais là c'est franchement un problème Java et non MySQL. Tu devrais suivre le conseil de Maximilian pour augmenter tes chances de réponse.
Ceci dit, si tu n'insères que le hashCode de l'objet, je doute que tu vas être capable de reconstruire l'objet après ! |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : février 2006 Messages : 953 ![]() |
http://perso.orange.fr/jm.doudoux/ja...al/chap020.htm
Il faut regarder du coté de "ObjectOutputStream" et "writeObject". Si le lien ne suffit pas, il faudra vraiment continuer la discussion dans le forum java. |
|
|
00
|
|
|
#10 | ||||
|
Membre Expert
![]() ![]() Inscription : mai 2005 Messages : 1 200 ![]() |
Bonjour,
La classe doit implémenter Serializable : Code :
public class lobjet implements Serializable Code :
Code :
Mais si te me permets, quel est l'intérêt de gérer la persistance de tes données comme ça? Tu ne pourras pas utiliser le SQL pour accéder à tes données! Tu devras les gérer uniquement au travers de ton appli.! |
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com