Création des comptes utilisateurs XML
Création des comptes utilisateurs XML
OS : Windows Seven
Langages : Java7 , XML 2.
Frameworks : JPA (Hibernate 4.2.6), JSF 2.2.4 (mojara)
SGBDR : Derby 10.1
Serveur d'application : TOMCAT 7.0.47
SQuirrel : 3.5.0
Eclipse : Kepler
Projet :
Ce PPE a pour but de créer des comptes utilisateurs générés dans un fichier XML.
Diagramme de classe du projet réalisé sous argoUML.
Pour ce tp nous avons utilisé un processus évènementiel appelé SAX (Simple API for XML), il est directement implémenté dans le JDK (version 1.7.0_40).
Tout d’abord , comme on peut le voir sur le diagramme UML, il y a un relation entre la classe Compte et Role monodirectionnelle. La relation 1..N indique qu’il y aura une clé étrangère dans la table role. Cette relation est à 1..N car un utilisateur qui a un compte peut avoir au moins un role voir plusieurs en fonction des différentes applications qu’ils utilisent.
Ici nous avons le fichier DTD à partir duquel on crée le fichier XML.
La DTD permet de vérifier la conformité du fichier XML.
La classe ExtractionXML contient un certain nombre de méthodes :
La méthode startDocument() qui est appelée lorsque le système évènementiel SAX détecte le début d’un fichier XML.
La méthode endDocument() qui est appelée lorsque SAX détecte une fin de fichier XML.
La méthode startElement() est appelée lorsque SAX détecte qu’il y a un début de balise.
La méthode endElement() qui est l’inverse de la méthode startElement().
Et enfin la méthode characters() qui est appelée lorsque SAX détecte un élément de type PCDATA c’est-à-dire un élément qui est parsable.
Enfin, la partie mapping réaliser grâce à un ORM va permettre de créer 2 tables compte et role (déclaré @Entity) dans la base de donnée. Ensuite vient le mapping des éléments de notre fichier XML, il est réalisé grâce aux objets rendus persistants qui sont passés en argument à la méthode enregistrer(Compte nouveau).
Sources :
Java: http://www.java.com/fr/download
JDK: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
JSF: https://javaserverfaces.java.net
Hibernate: http://hibernate.org/orm
Eclipse: https://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/keplersr1
Tomcat: http://tomcat.apache.org/download-70.cgi
Squirrel: http://www.squirrelsql.org/#installation