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 :

Meilleur API XML pour Java


Sujet :

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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Par défaut Meilleur API XML pour Java
    j'ai commence a utiliser JDOM pour sa simplicite, mais au detour d'un article, je suis tombe sur DOM4J que j'ai trouver encore
    plus facile a utiliser.

    Et vous q'en pensez vous ??

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Personnellement je trouve DOM4J à peine moins compliqué que le DOM fourni avec Java, c'est-à-dire bien trop verbeux en pratique.
    Mais le but est effectivement de choisir ce qui est le plus simple pour ce qu'on a besoin de faire, alors si tu as trouvé un moyen d'utiliser DOM4J qui te convient mieux que JDOM, ne te gêne pas.

    ('Fin bon, je dis ça, mais je suis persuadé que tu te trompes. Si tu nous montrais ce que tu fais avec DOM4J, et comment tu fais la même chose avec JDOM et qui te semble plus compliquée, je pourrais t'expliquer où est ton erreur... Ou m'avouer vaincu, selon les cas.)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre Expert
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Par défaut
    voila comment on creer une arborescence en JDom

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     Element etudiant = new Element("etudiant");
     racine.addContent(etudiant);
     
     Attribute classe = new Attribute("classe","P2");
     etudiant.setAttribute(classe);        
     
     Element nom = new Element("nom");
     nom.setText("CynO");
     etudiant.addContent(nom);
    ca fait 3 variables qui ne serviront qu'un seule fois. si je veux créer un autre node ou propriété je serais oblige de créer une autre variable. et je trouve ca lourd

    Pourtant avec dom4j ca aurais donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Etudiant = root.addElement("Etudiants");
    livre.addElement("nom").addText("etudiant 1");
    livre.addElement("prenom").addText("prenom 1");
    livre.addElement("classe").addText("classe 1");
    je trouve la syntaxe de dom4j plus facile et moin gourmande en variable que JDom. et ca se rapproche plus du concept je pense.

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Vaincu je m'avoue.

    Je n'ai sans doute pas assez bûché DOM4J depuis que j'ai fait des progrès en XML. Ça, et puis, ce qui me dérangeait avant, c'était pas le côté écrire, mais le côté lire. Mais je vois qu'il y a du XPath.
    Il y avait aussi le fait qu'on trouve plus facilement comment lire un fichier XML et écrire un fichier XML avec JDOM, mais c'est un peu faible, comme argument.

    Notons quand même :
    - Tu ne construis pas le même document XML avec JDOM ou DOM4J. Why ? Tu étais supposé comparer les deux.
    - Il est inutile de construire des Attribute en JDOM. setAttribute(String, String) est très bien. Cette classe n'est pas spécialement utile, en fait, sauf pour la complétude du modèle.
    - Je me doute bien que c'est pour les besoins de l'exemple, mais précisons quelle est la manière correcte de faire cet exemple :

    fichier data.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <root>
      <Etudiants>
        <etudiant classe="P2">
          <nom>etudiant 1</nom>
          <prenom>prenom 1</prenom>
        </etudiant>
      </Etudiants>
    </root>
    ou bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <root>
      <Etudiants>
        <etudiant>
          <nom>etudiant 1</nom>
          <prenom>prenom 1</prenom>
          <classe>P2</classe>
        </etudiant>
      </Etudiants>
    </root>
    Et fichier DataReader.java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // blahblah
     
    Document readData(File dataFile) throws IOException, JDOMException {
      // dataFile est vers data.xml
      SAXBuilder builder = new SAXBuilder();
      return builder.build(dataFile);
    }
     
    // blahblah
    Ou la même chose avec DOM4J
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre Expert
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Par défaut
    a moin de me tromper

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    Document readData(File dataFile) throws IOException, JDOMException {
      // dataFile est vers data.xml
      SAXReader xmlReader = new SAXReader();
      document = xmlReader.read("dataFile");
     
      return document;
    }

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Oui, ça marcherait si le fichier était garanti être dans le répertoire courant et s'appeler dataFile. Après, tout dépend jusqu'à quel point on veut être flexible.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre chevronné Avatar de billynirvana
    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2004
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 472
    Par défaut
    Que souhaites tu faire avec tes fichiers XML? Lecture? Création? Modification?...

    J'utilise fréquemment XStream qui est facile à prendre en main et par un jeu d'annotations me permet de gagner énormément de temps.

    Billy

  8. #8
    Membre Expert
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Par défaut
    Citation Envoyé par billynirvana Voir le message
    Que souhaites tu faire avec tes fichiers XML? Lecture? Création? Modification?...
    humm en fait tout. j'ai des données venant d'une BD, je creer un fichier XML et transforme avec un xslt (model).

    voila en gros

Discussions similaires

  1. [Avis] Quelles sont les meilleures API et outils Java ?
    Par Mickael Baron dans le forum API standards et tierces
    Réponses: 33
    Dernier message: 08/06/2011, 14h39
  2. api XML pour le C ?
    Par bit_o dans le forum XML
    Réponses: 4
    Dernier message: 17/10/2007, 14h35
  3. API SMIL pour Java
    Par Danyboy11 dans le forum Multimédia
    Réponses: 2
    Dernier message: 20/04/2007, 08h53
  4. [API] COM pour java
    Par JFDelges dans le forum Général Java
    Réponses: 4
    Dernier message: 15/03/2006, 10h16
  5. [Windows]Api win32 pour java
    Par cpanette dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 27/06/2005, 15h06

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