La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Présentation des frameworks pour Java EE

Présentations similaires


Présentation au sujet: "Présentation des frameworks pour Java EE"— Transcription de la présentation:

1 Présentation des frameworks pour Java EE
Tapestry (MVC) et JAXB (Persistance en XML) Christopher BIGOZZI, Raouda MCHAREK, Samir SADROUDINE

2 Sommaire Pré-requis Tapestry JAXB Cas d’étude

3 Pré-requis Connaissance de Java
Connaissance des fondements du web (HTML,HTTP) Connaissance des technologies de J2EE (Servlet et balises personnalisées) Connaissance des architectures des serveurs web

4 Tapestry Qu’est-ce que Tapestry ? Fonctionnalités de Tapestry
Avantages et inconvénients de Tapestry Installation de Tapestry Application de Tapestry

5 Qu’est-ce que Tapestry?
utilisation XML pour implémenter des applications Web en suivant le motif de conception MVC projet intégré par la fondation Apache comme sous-projet Jakarta.. Mapping objet/relationnel décrit la technique consistant à faire le lien entre la représentation objet des données et sa représentation relationnelle, basé sur un schéma SQL.

6 Avantages et inconvénients
Rapidité de développement, configuration minimale et URLs claires Prise en charge de nombreuses problématiques permettant au développeur de se concentrer sur la partie métier Séparation complète de la présentation HTML du code Java Souplesse d’utilisation (développement de ses propres composants) Facilité d’intégration avec Hibernate et Spring. Inconvénients : Absence de mapping relationnel spécifique : il faut utiliser JDBC ou Hibernate Masquage de nombreux mécanismes web Manque de maturité (composants incomplets, communauté limitée, documentation et tutoriaux insuffisants). Pas de rétro-compatibilité avec la version 4.

7 Installation de Tapestry
Tapestry n’est pas un simple plugin de Eclipse, mais une librairie qu’il faut configurer Il suffit de mettre les .jar dans le dossier : WEB-INF/lib

8 Application de Tapestry
2 types de fichiers qui sont liés: Logique (.java) : code métier de la page Graphique (.tml ou .html) : vue de la page Accueil.tml Accueil.java

9 Fonctionnement accueil .tml <t:form t:id="loginForm">
<t:textfield t:value="message"/> <input type="submit" value="Submit"/> </t:form> accueil. java @OnEvent(value="submit", component="loginForm") void onFormSubmit() { System.out.println("Handling form submission!"); }

10 t:validate=required Spécification dans le fichier app.Property

11 JAXB (Java Architecture for XML Binding)
Qu’est-ce que JAXB ? Installation de JAXB Fonctionnement de JAXB Avantages et inconvénients de JAXB Application de JAXB

12 Qu’est-ce que JAXB ? librairie Java implémentée par SUN pour générer du Code Java depuis un fichier XML et inversement Site de référence: API Java permettant de créer des classes Java à partir de Schémas (.XSD) et inversement

13 Fonctionnalités de JAXB
Data Binding : automatiser la transformation d'un modèle de données en un modèle de données objets dans un langage de programmation 3 étapes: Génération de classes Rassemblement des données Redistribution des données Objectif final : mise en correspondance automatique entre une famille de documents XML et un schéma de classes Java.

14 Installation de JAXB Installation du plugin XJC de Eclipse
Télécharger le plugin à cette adresse : Le placer dans le dossier /plugins/ de Eclipse Faire la commande ‘eclipse.exe - clean’ pour prendre en compte les nouveaux plugins Créer un schéma fichier.xsd décrivant les données Puis clic bouton-droit sur le fichier Normalement une nouvelle option est apparue : JAXB 2.0. L’installation du plugin a été faite correctement

15 Fonctionnement général

16 1ière étape : création de classes
Création d’un .xsd Lancer JAXB en utilisant eclipse Création de n fichiers : Des .java Une fabrique, permet d’instancier les objets

17 2ième étape : Marshalling
Génération d’un fichier XML depuis des objets JAVA Création d’un contexte et indication du package source JAXBContext jaxbContext=JAXBContext.newInstance(Projet.class); Création d’un « marshaller » Marshaller marshaller=jaxbContext.createMarshaller(); Génération du XML marshaller.marshal(projet, new FileOutputStream(emplacement)); Le XML est crée

18 3ième étape : Unmarshalling
Génération des objets JAVA depuis un XML Création d’un contexte et indication du package source JAXBContext jaxbContext=JAXBContext.newInstance(« Contacts_JAXB »); Créer un « unmarshaller » sur le contexte Unmarshaller unmarshaller=jaxbContext.createUnmarshaller(); Création de l’objet Projet projet = (Projet)unmarshaller.unmarshal(emplacement);

19 Avantages et inconvénients de JAXB
Lire et écrire dans une vaste gamme de type d'entrée/sortie (Fichier, Flux, Noeud Dom ...etc...) Facilité d'utilisation Inconvénients : Utilisation d'annotations, ce qui oblige a altérer les classes d'origines Reformatage des classes pour avoir soit des méthodes get/set annotées ou des variables annotées

20 Comparaison avec d’autres Frameworks
Même utilisation que JAXP (SAX et DOM), mais niveau d’abstraction plus élevé, plus rapide Nécessité d’installer des grosses librairies à l’inverse de Frameworks comme Castor

21 CONCLUSION Documentation difficile à trouver
On a pu travaillé notre anglais ;) Prise en main difficile malgré la simplicité apparente d’utilisation


Télécharger ppt "Présentation des frameworks pour Java EE"

Présentations similaires


Annonces Google