Projet Comptes XML

Transcription

Projet Comptes XML
ENGELS THOMAS
SIO2
PPE-COMPTEXML-SUPPORT
Projet Developpement
CRÉATION DES COMPTES UTILISATEURS
Environnement utilisé :
-Fedora version 20
-Eclipse JAVA
-Framework : JPA
-JAVA JDK 1.7.0_45
-SGBDR = Squirrel(derby)
-SAX(Simple API for XML)
Nous avons ici un projet qui se déroule en plusieurs étapes.
1)Création d'un fichier XML à partir d'une DTD.
2)Analyse du fichier XML(parsing)
3)Représentation des données reçues en JPA
4)Utilisation de l'api JPA et JDBC pour faire persister les données dans la base de données
1/3
ENGELS THOMAS
SIO2
PPE-COMPTEXML-SUPPORT
Notre fichier XML ici est :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE comptes SYSTEM "nouveaux_comptes.dtd" >
<comptes>
<compte date-creation="08/01/2014" nom-complet="DUPONT Pierre">
<login>dupont2014</login>
<password>pierre2014</password>
<role>user</role>
<role>admin</role>
<role>manager</role>
</compte>
<compte date-creation="08/01/2014" nom-complet="Martin Isabelle">
<login>martin2014</login>
<password>isabelle2014</password>
<role>user</role>
</compte>
</comptes>
La ligne suivante :
<!DOCTYPE comptes SYSTEM "nouveaux_comptes.dtd" >
nous permet de faire référence à la DTD(Document Type Definition) « nouveaux_comptes.dtd »,
nous pouvons dès la création du fichier XML importer cette DTD et voici ce qu'elle va nous générer
automatiquement.
Voici à quoi ressemble notre DTD :
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT comptes (compte+)>
<!ELEMENT compte (login, password, role+)>
<!ATTLIST compte nom-complet
CDATA #IMPLIED
date-creation
CDATA #REQUIRED>
<!ELEMENT login
(#PCDATA)>
<!ELEMENT password
(#PCDATA)>
<!ELEMENT role
(#PCDATA)>
L'attribut #IMPLIED signifie facultatif
L'attribut #REQUIRED signifie obligatoire.
Nous allons analayser notre fichier XML en utilisant la technologie de parsing (analyse). Il s’agit ici
d’une analyse de type SAX (Simple API for XML).
Cette librairie est est implémentée dans le kit de développement JAVA.
Nous disposons de deux classes pour parser(analyser) le contenu de nos fichiers XML:
ExtractionXML.java et testParseur.java !
2/3
ENGELS THOMAS
SIO2
PPE-COMPTEXML-SUPPORT
Notre clase ExtractionXML dispose de 5 méthodes
startDocument(), endDocument(), startElement(), endElement() et characters().
Ce sont des méthodes implémentées dans l'api SAX.
La méthode characters() extrait toutes les valeurs PCDATA du fichier XML.
La méthode startDocument() est utilisée à la rencontre du début d'un fichier XML.
La méthode endDocument() au pied du fichier XML.
La méthode startElement() méthode appelée lorsque SAX rencontre une balise ouvrante .
La méthode endElement() est appelée lorsque SAX rencontre une balise fermante.
3/3