Parser un document avec SAX et récupérer les données
Bonsoir,
Voilà je découvre java et je souhaiterais parser un fichier xml. Le problème étant le suivant je défini une classe qui hérite de DefaultHandler, je redéfinis les méthodes startElement(), endElement() et characters et je souhaite récupérer le contenu dans un objet.
Or imaginons que j'ai un objet User qui dérive de DefaultHandler qui possède les champs suivants : pseudo, age et mail. Je souhaite que l'objet possède la faculté de récupérer lui-même ses informations donc qu'il soit capable de parser lui-même le fichier xml en question.
Je suis donc obligé de faire quelque chose du style :
Code:
1 2 3 4 5
|
public void parse() {
SAXParser sp = spf.newSAXParser();
sp.parse(in, this);
} |
J'ai simplifié le code histoire de garder le strict minimum. C'est au niveau du this que ça me dérange. Puis que this est le User et contient à la fois les fonctions nécessaires au parsage et les variables à affecter.
Donc j'ai pensé à une autre solution, je crée une classe UserParser qui dérive de DefaultHandler. À l'intérieur de celle-ci je construis un objet User, je définis un accesseur qui va me permettre de récupérer le User avec les caractéristiques du fichier.
Mais je trouve ça un peu bancal... Existe t-il une sorte de schéma à suivre ou une meilleure solution car pour le moment je patauge un peu.
Merci à vous.
Bye.