IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

sauvegarder un objet java avec XML


Sujet :

Format d'échange (XML, JSON...) Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut sauvegarder un objet java avec XML
    Bonjour à tous !

    J'ai une question à propos de la sauvegarde d'objet Java avec XML.
    J'ai un document xml de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <BALISE 1>
             <BALISE 2  objet="monobjet" />
    </BALISE 1>
    Et je voudrais savegarder l'objet java monobjet en le mettant dans l'attribut objet de BALISE2.
    La classe monobjet implemente serializable. Je ne sais pas s'il faut que j'utilise des ObjectInputStream et des ObjectOutputStream
    Le but bien sur est de pouvoir lire le fichier xml et de charger l'objet monobjet.

    Merci d'avance.

  2. #2
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Utilise JDOM (voir les tutos) pour lire/écrire au bon endroit dans le fichier XML, et ObjectInputStream ou ObjectOutputStream pour lire/écrire la sérialisation de ton objet.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut
    oui ok je suis d'accord avec ca.
    Mais comment dire "je veux ecrire ca, la" ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // ajout de l'attribut objet
    Attribute obj = new Attribute("objet", monobjet);
    racine.setAttribute(obj);
    Avec ce morceau de code je sais que je suis bien placé mais je ne sais pas comment utilisé ObjectOutputStream et ObjectInputStream pour que ca ecrive a cet endroit.

  4. #4
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Un petit tour du côté de la !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut
    ok mais je ne connais pas le fichier de sortie dans la classe ou je veux ecrire mon objet.
    Y'a t'il donc un moyen de dire. Je veux ecrire mon objet ici.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    try {
    	FileOutputStream fos = new FileOutputStream("C:/toto.xml");
    	ObjectOutputStream oos = new ObjectOutputStream(fos);
    	// ajout de l'attribut objet
    	Attribute obj = new Attribute("objet", oos.writeObject(element));
    	racine.setAttribute(obj);
    	oos.close();
    } catch (IOException e) {
    	e.printStackTrace();
    }
    Mais cela n'est pas possible, n'est ce pas ?

  6. #6
    Membre émérite Avatar de g_rare
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 608
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    try {
    	ByteArrayOutputStream tmp = new ByteArrayOutputStream();
    	ObjectOutputStream oos = new ObjectOutputStream(tmp);
            oos.writeObject(element);
    	// ajout de l'attribut objet
    	Attribute obj = new Attribute("objet", oos.toString("UTF-8"));
    	racine.setAttribute(obj);
    	oos.close();
    } catch (IOException e) {
    	e.printStackTrace();
    }
    Bon résumé à garder en mémoire (article developpez.com en plus).


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XStream] Sérialiser un conteneur d'objet java en xml
    Par nitikhor dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 19/03/2012, 18h00
  2. sauvegarder un objet java dans un attribut xml
    Par younder dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 06/01/2009, 11h15
  3. Réponses: 1
    Dernier message: 12/09/2008, 21h17
  4. [AJAX] Comment recuperer la propriété d'un objet Java avec XmlHttpRequest ?
    Par framus.class dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/02/2008, 09h58
  5. comment utiliser des objets java avec ireport
    Par Invité dans le forum iReport
    Réponses: 0
    Dernier message: 28/07/2007, 23h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo