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 :

Récupérer des attributs à partir d'un document XML [SAX]


Sujet :

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

  1. #1
    Membre à l'essai
    Homme Profil pro
    Apprenti Master MIAGE
    Inscrit en
    Janvier 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Apprenti Master MIAGE

    Informations forums :
    Inscription : Janvier 2013
    Messages : 17
    Points : 16
    Points
    16
    Par défaut Récupérer des attributs à partir d'un document XML
    Bonjour ou bonsoir à tous !

    Je suis actuellement en stage de 2ème année de BTS et je dois réaliser un référentiel en Java à partir d'un document XML.

    J'ai d'abord commencé en utilisant JDOM mais il semblerait que ce ne soit pas l'API adapté pour simplement consulter le document XML. En lisant la FAQ, il apparaît que JAXP me conviendrait le mieux. Je souhaite récupérer différentes valeurs d'attributs pour pouvoir ensuite instancier mes objets.

    Voici "en gros" la structure de mon document XML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <domaine>
      <environnements>
     
        <environnement name="nomEnvironnement1">	
    	  <applications>
     
            <application>
              <traitements>
                <traitement name="nomTraitement1"> </traitement>
                <traitement name="nomTraitement2"> </traitement>		 
              </traitements>
            </application>	
     
            <application>
              <traitements>
                <traitement> </traitement>
                <traitement> </traitement>		 
              </traitements>
            </application>
     
    	  </applications>	  
        </environnement>
     
        <environnement name="nomEnvironnement2">	
    	  <applications>
     
            <application>
              <traitements>
                <traitement> </traitement>
                <traitement> </traitement>		 
              </traitements>
            </application>	
     
            <application>
              <traitements>
                <traitement> </traitement>
                <traitement> </traitement>		 
              </traitements>
            </application>
     
    	  </applications>	  
        </environnement>	
     
      </environnements>
    </domaine>
    JAXP me permettra-t-il de récupérer les attributs tels que "nomEnvironnement1" ou "NomTraitement1" ?

    Enfin, la taille du document XML (300k lignes environ soit une vingtaines de Mo) ne va-t-elle pas poser problème pour ce type de recherche (Erreur de type OutOfMemory...) ?

    Merci d'avance pour vos réponses et excusez mes questions qui paraissent peut-être bêtes

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    JAXP c'est le nom générique pour toute la couche xml de java. Derrière tu as DOM ou SAX, suivant comment tu veuille travailler en évènementiel ou avoir tout le document en mémoire. Si tu veux tout le document en mémoire, JDOM reste plus facile. Si tu veux travailler en évènementiel (typiquement des gros documents xml comme ton cas ou de la transformation), SAX est bien adapté. Tu crée un handler qui reçois les informations au fur et à mesure du parcours du xml et qui les digère.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Apprenti Master MIAGE
    Inscrit en
    Janvier 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Apprenti Master MIAGE

    Informations forums :
    Inscription : Janvier 2013
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    D'accord, merci de ta réponse rapide ! J'essaie ça dès demain et je vous tiens au courant

  4. #4
    Membre à l'essai
    Homme Profil pro
    Apprenti Master MIAGE
    Inscrit en
    Janvier 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Apprenti Master MIAGE

    Informations forums :
    Inscription : Janvier 2013
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    Et autre chose, en utilisant ta méthode, je pourrai "facilement" récupérer mes attributs "nomEnvironnement..." ?

  5. #5
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Relativement facilement, mais il te faut te mettre dans le logique événementielle SAX ce qui n'est pas forcément aisé.
    Regarde ce tuto : http://java.developpez.com/faq/xml/?page=sax
    Mais sur un doc de 20Mo, pas trop le choix

  6. #6
    Membre à l'essai
    Homme Profil pro
    Apprenti Master MIAGE
    Inscrit en
    Janvier 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Apprenti Master MIAGE

    Informations forums :
    Inscription : Janvier 2013
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    Je regarde le tuto et je reconnais que c'est plutôt compliqué. Je persiste et je vais essayer de monter quelque chose de cohérent quitte à vous solliciter si vraiment je galère .. Ce qui est fort probable

  7. #7
    Membre à l'essai
    Homme Profil pro
    Apprenti Master MIAGE
    Inscrit en
    Janvier 2013
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Apprenti Master MIAGE

    Informations forums :
    Inscription : Janvier 2013
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    Merci beaucoup pour vos conseils , mon programme commence à tourner grâce à SAX. Je pense avoir compris le principe et c'est plutôt pratique pour récupérer des données.

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

Discussions similaires

  1. [Débutant] Récupérer des données à partir de fichier XML
    Par Howyd dans le forum MATLAB
    Réponses: 3
    Dernier message: 20/02/2012, 22h56
  2. [JSTL] récupérer des attributs en séries à partir de request
    Par xaupaix dans le forum Taglibs
    Réponses: 1
    Dernier message: 23/07/2010, 23h59
  3. Fabriquer des requêtes sql à partir d'un document xml
    Par ktel dans le forum XQUERY/SGBD
    Réponses: 4
    Dernier message: 18/10/2005, 16h45
  4. Récupérer des floats à partir d'une string
    Par hamster dans le forum SL & STL
    Réponses: 8
    Dernier message: 09/06/2005, 08h10
  5. [débutant][XSL][FOP] Attribut à partir d'un paramètre XML
    Par drinkmilk dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 03/03/2005, 09h41

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