Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Créer des objets depuis un fichier xml

4 réponses
Avatar
soop
Bonjour,
je suis nouveau ici et en java aussi. La question a sans doute déjà été
posée mais je ne sais pas s'il existe une archive quelque part...
Voilà, je fais un jeu et je voudrais pouvoir créer des objets en lisant
depuis un fichier xml. J'ai lu les tutoriels Sun (SAX et DOM) mais je ne
suis guère plus avancé. Par exemple, on peut afficher dans un JTree un arbre
xml. OK.
Mais ce que je cherche, moi, c'est à créer des objets de nature différente.

Par exemple : j'ai un fichier xml avec
<personne>
<nom></nom>
<id></id>
</personne>

<objet>
<nom></nom>
<valeur></valeur>
<objet>

et deux classes :

Personne {
String nom;
String id;
}
Objet{
String nom;
int valeur;
}

Comment automatiser cela avec SAX ou DOM ? Par exemple, comment faire un
Adapter qui créerait automatiquement un Objet o après avoir récupéré les
paramètres idoines dans les bonnes variables (ici "nom" et "valeur") : Objet
o = new Objet(nom, valeur) ?
Volà, je ne sais pas si c'est clair, mais j'ai besoin d'aide, ça c'est clair
;)

4 réponses

Avatar
Jean-Marc Vanel
Castor fait exactement ce que vous voulez.
Je l'ai utilisé dans plusieurs projets.
http://www.castor.org/xml-framework.html

Dans cette catégorie des "bindings" XML-Java il y a aussi XMLBeans, JAXB.
Il y a aussi les classes XMLDecoder et XMLEncoder qui sont inclues dans le JDK
mais qui font un format XML moins agréable.

Bonjour,
je suis nouveau ici et en java aussi. La question a sans doute déjà été
posée mais je ne sais pas s'il existe une archive quelque part...
Voilà, je fais un jeu et je voudrais pouvoir créer des objets en lisant
depuis un fichier xml. J'ai lu les tutoriels Sun (SAX et DOM) mais je ne
suis guère plus avancé. Par exemple, on peut afficher dans un JTree un arbre
xml. OK.
Mais ce que je cherche, moi, c'est à créer des objets de nature différente.

Par exemple : j'ai un fichier xml avec
<personne>
<nom></nom>
<id></id>
</personne>

<objet>
<nom></nom>
<valeur></valeur>
<objet>

et deux classes :

Personne {
String nom;
String id;
}
Objet{
String nom;
int valeur;
}

Comment automatiser cela avec SAX ou DOM ? Par exemple, comment faire un
Adapter qui créerait automatiquement un Objet o après avoir récupéré les
paramètres idoines dans les bonnes variables (ici "nom" et "valeur") : Objet
o = new Objet(nom, valeur) ?
Volà, je ne sais pas si c'est clair, mais j'ai besoin d'aide, ça c'est clair
;)




Avatar
soop
Jean-Marc Vanel wrote:

Castor fait exactement ce que vous voulez.
Je l'ai utilisé dans plusieurs projets.
http://www.castor.org/xml-framework.html



Merci. Je vais regarder ça de près et je reviens vous demander de l'aide :))

Avatar
Vinz
j'ai posé la question y a 2 semaines, et on m'a indiqué Digester
(http://jakarta.apache.org/commons/digester/), qui a résolu mes problèmes.
pas super évident quand on débute, mais ça va bien quand on a compris le
principe.


"soop" a écrit dans le message de news:
c2dfjf$deh$
Jean-Marc Vanel wrote:

Castor fait exactement ce que vous voulez.
Je l'ai utilisé dans plusieurs projets.
http://www.castor.org/xml-framework.html



Merci. Je vais regarder ça de près et je reviens vous demander de l'aide
:))



Avatar
Jean-Marc Vanel
Digester est intéressant quand on veut traiter les données XML un élément par ci
un élément par là.

Mais pour le cas que pose soop, où il y un isomorphisme entre le XML et les
classes Java, Castor est idéal car il fait le travail en 3 lignes.

j'ai posé la question y a 2 semaines, et on m'a indiqué Digester
(http://jakarta.apache.org/commons/digester/), qui a résolu mes problèmes.
pas super évident quand on débute, mais ça va bien quand on a compris le
principe.


"soop" a écrit dans le message de news:
c2dfjf$deh$

Jean-Marc Vanel wrote:


Castor fait exactement ce que vous voulez.
Je l'ai utilisé dans plusieurs projets.
http://www.castor.org/xml-framework.html



Merci. Je vais regarder ça de près et je reviens vous demander de l'aide


:))