Bonjour,

J'ai un projet dont je doit utiliser un fichier XML pour extraire des données à partir du fichier vers mon application JAVA.

d’après mes recherche plusieurs APIs permet de faire ce travail, mais 3 sont les plus répondues (JAXB, SAX et DOM).

En ce documentant un peu sur ces 3 APIs j'ai trouver que :

DOM : Permet de charger tous le fichier xml en mémoire dans un object Document et le parcourir comme une structure d'arbre, ce qui sature la mémoire et alourdit le parcours du fichier car si on veut arriver à un noeud il faut passer par tous ces noeud parent.

SAX : L'avantage de SAX est qu'il parcours le ficher séquentiellement, alors comme ça on resoud le problème de saturation de mémoire si le fichier est trop grand. SAX utilise des events pour piloter le fichier XML.

JAXB : Il ne permet pas de parcourir le fichier XML mais au contraire il fait de liaison entre le xml et les objects java correspondant grace à des annotations. comme ça il devient plus simple de manipuler des objets java qu des noeuds xml ou des events.

D'aprés cette etude comparative je trouve que JAXB est le plus avantageux.

est ce que quelqu'un peut me confirmer mon choix ? est ce que vous pouvez me donner de plus ? si vous étiez dans ma situation comment vous pouvez juger votre choix ?