Présentation de frameworks J2EE          HIBERNATE ET JSF              LIU Sizhao LUO Xin MALICK MANDENGUE Serge   1
SommaireA. Hibernate (Persistance)B. JSF (MVC)C. Cas d’étude         LIU Sizhao LUO Xin MALICK MANDENGUE Serge   2
Hibernate Qu’est-ce qu’Hibernate ? Objectifs d’Hibernate Avantages et inconvénients Configuration d’Hibernate         ...
Qu’est-ce qu’Hibernate ? C’est un logiciel, écrit en java, qui permet de  faire le mapping entre Objets Java et Objets  s...
Objectifs d’Hibernate Réduire le temps de développement de lapplication en  éliminant une grande partie du code SQL à écr...
Avantages et inconvénients Les objets métiers sont plus faciles à manipuler Peu de dépendance envers une base de données...
Configuration d’Hibernate Hibernate permet de manipuler facilement les objets  persistants mais demande une configuration...
JSF (Java Server Faces) Qu’est-ce que JSF ? Objectifs de JSF Meilleur que Struts Qu’est-ce qu’une application JSF ? C...
Qu’est-ce que JSF ? Framework de développement d’application web en Java permettant de respecter le modèle d’architecture...
Objectifs de JSF une séparation de la couche présentation des  autres couches (MVC) un mapping entre l’HTML et l’objet ...
Meilleur que Struts … Composants extensibles – JSF fournit plein de  composants fondamentaux pour développer des  nouveau...
Comment ça marche ?  L’interface utilisateur construite dans la page   JSP est générée à l’aide de la technologie JSF   (...
Configuration d’uneapplication JSF Configurer le fichier web.xml  (javax.faces.webapp.FacesServlet) Spécifier le nom et ...
Configuration d’uneapplication JSF Indiquer si les objets importants doivent être  crées au démarrage de  l‘application(c...
Cas d’étude1. Sujet2. Création de la base de données3. Configuration des frameworks4. Gestion des classes5. Résultat final...
Sujet Logiciel de gestion de contacts en ligne   (nom, prénom, num tél, mail, …) Cas d’utilisations volontairement simp...
Sujet : Uses cases      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   17
Création de la base dedonnées 2 tables: Contacts et Utilisateurs Contacts  (Id, Nom, Prénom, Adresse, Tel, Mail, Id_user...
Configurations:Hibernate.cfg.xml   <hibernate-configuration>    <session-factory >                                <!-- ...
Configurations:Contacts.hbm.xml   <hibernate-mapping package="CasEtude">              <class                           ...
Configurations:Utilisateurs.hbm.xml   <hibernate-mapping package="CasEtude">              <class                       ...
Classes Java 1 fichier hibernateutil.java Pour Contact et Utilisateurs   1 fichier xxx.java       Mapping du tableau  ...
Fichier HibernateUtil.java   public class HibernateUtil {   private static final SessionFactory sessionFactory;      sta...
Page de connexion      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   24
Côté Administrateur      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   25
Administration: Ajout d’uncontact      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   26
Côté Utilisateur      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   27
Utilisateur: Ajout d’uncontact      LIU Sizhao LUO Xin MALICK MANDENGUE Serge   28
Fin de la présentation       Merci!        Auteurs      LIU Sizhao        LUO XinMALICK MANDENGUE Serge  LIU Sizhao LUO Xi...
Prochain SlideShare
Chargement dans…5
×

Hibernate et jsf

3 580 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
3 580
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
277
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Hibernate et jsf

  1. 1. Présentation de frameworks J2EE HIBERNATE ET JSF LIU Sizhao LUO Xin MALICK MANDENGUE Serge 1
  2. 2. SommaireA. Hibernate (Persistance)B. JSF (MVC)C. Cas d’étude LIU Sizhao LUO Xin MALICK MANDENGUE Serge 2
  3. 3. Hibernate Qu’est-ce qu’Hibernate ? Objectifs d’Hibernate Avantages et inconvénients Configuration d’Hibernate LIU Sizhao LUO Xin MALICK MANDENGUE Serge 3
  4. 4. Qu’est-ce qu’Hibernate ? C’est un logiciel, écrit en java, qui permet de faire le mapping entre Objets Java et Objets stockés en base relationnelle en assurant la persistance. S’occupe du transfert des classes Java dans les tables de la BDD et des types de données dans les types de données SQL. http://www.hibernate.org/ LIU Sizhao LUO Xin MALICK MANDENGUE Serge 4
  5. 5. Objectifs d’Hibernate Réduire le temps de développement de lapplication en éliminant une grande partie du code SQL à écrire pour interagir avec la base de données et en encapsulant le code SQL résiduel. Les développeurs manipulent les classes dont les données doivent être persistantes comme des classes Java normales. Seules une initialisation correcte d‘Hibernate doit être effectuée, et quelques règles respectées lors de lécriture et de la manipulation des classes persistantes. LIU Sizhao LUO Xin MALICK MANDENGUE Serge 5
  6. 6. Avantages et inconvénients Les objets métiers sont plus faciles à manipuler Peu de dépendance envers une base de données précise Théoriquement, il ny a que le fichier de configuration à changer si on passe dune base de données comme Oracle vers PostgreSQL Le seul inconvénient que lon peut trouver à Hibernate est quil nécessite dapprendre à lutiliser LIU Sizhao LUO Xin MALICK MANDENGUE Serge 6
  7. 7. Configuration d’Hibernate Hibernate permet de manipuler facilement les objets persistants mais demande une configuration rigoureuse. Nous verrons ici deux façons de configurer laccès à la base de données. Ces fichiers définissent les propriétés de la connexion. Il sagit des fichiers hibernate.properties et hibernate.cfg.xml. Nous utilisons ce fichier de la configuration pour configurer les informations du BDD et les informations du mapping. LIU Sizhao LUO Xin MALICK MANDENGUE Serge 7
  8. 8. JSF (Java Server Faces) Qu’est-ce que JSF ? Objectifs de JSF Meilleur que Struts Qu’est-ce qu’une application JSF ? Configuration d’une application JSF LIU Sizhao LUO Xin MALICK MANDENGUE Serge 8
  9. 9. Qu’est-ce que JSF ? Framework de développement d’application web en Java permettant de respecter le modèle d’architecture MVC et basé sur des composants côté présentation Site de référence: http://java.sun.com/javaee/javaserverfaces 2 implémentations JSF (Sun, Apache) Version 1.1 associée à J2EE 1.4 Version 1.2 associée à Java EE 5 LIU Sizhao LUO Xin MALICK MANDENGUE Serge 9
  10. 10. Objectifs de JSF une séparation de la couche présentation des autres couches (MVC) un mapping entre l’HTML et l’objet un ensemble de composants riches et réutilisables une liaison simple entre les actions côté client de l’utilisateur (event listener) et le code Java côté serveur JSF peut être utilisé pour générer autre chose que du HTML (XUL, XML, WML, …) LIU Sizhao LUO Xin MALICK MANDENGUE Serge 10
  11. 11. Meilleur que Struts … Composants extensibles – JSF fournit plein de composants fondamentaux pour développer des nouveaux composants et on peut les participer aux autres Managed-Beans (Dependency Injection) – JSF peut créer des managed beans variés POJO Action Méthods – les actions du Struts sont attachées avec les API du Struts, mais les actions du JSF peuvent réaliser dans POJO JSF est le critère – Struts est un produit opensource, mais JSF est le critère LIU Sizhao LUO Xin MALICK MANDENGUE Serge 11
  12. 12. Comment ça marche ?  L’interface utilisateur construite dans la page JSP est générée à l’aide de la technologie JSF (résultat myUI)  Elle fonctionne sur le serveur et le rendu est retourné au client. LIU Sizhao LUO Xin MALICK MANDENGUE Serge 12
  13. 13. Configuration d’uneapplication JSF Configurer le fichier web.xml (javax.faces.webapp.FacesServlet) Spécifier le nom et le chemin du fichier de configuration (javax.faces.application.CONFIG_FILES) Spécifie où l’état de l’application doit être sauvé (javax.faces.STATE_SAVING_METHOD) Valider ou pas les fichiers XML (com.sun.faces.validateXml) LIU Sizhao LUO Xin MALICK MANDENGUE Serge 13
  14. 14. Configuration d’uneapplication JSF Indiquer si les objets importants doivent être crées au démarrage de l‘application(com.sun.faces.verifyObjects) LIU Sizhao LUO Xin MALICK MANDENGUE Serge 14
  15. 15. Cas d’étude1. Sujet2. Création de la base de données3. Configuration des frameworks4. Gestion des classes5. Résultat final LIU Sizhao LUO Xin MALICK MANDENGUE Serge 15
  16. 16. Sujet Logiciel de gestion de contacts en ligne  (nom, prénom, num tél, mail, …) Cas d’utilisations volontairement simples :  concentration sur les technologies  à vous d’être originaux sur la réalisation Deux acteurs :  ladministrateur qui va gérer la liste des utilisateurs et les mots de passe (ajout, suppression, init mot de passe, stats...)  lutilisateur qui va gérer ses contacts (ajout, suppression, affichage, recherche, nb contacts...) LIU Sizhao LUO Xin MALICK MANDENGUE Serge 16
  17. 17. Sujet : Uses cases LIU Sizhao LUO Xin MALICK MANDENGUE Serge 17
  18. 18. Création de la base dedonnées 2 tables: Contacts et Utilisateurs Contacts (Id, Nom, Prénom, Adresse, Tel, Mail, Id_user) Utilisateurs (Id, Nom, motdepasse, statut) LIU Sizhao LUO Xin MALICK MANDENGUE Serge 18
  19. 19. Configurations:Hibernate.cfg.xml <hibernate-configuration> <session-factory > <!-- local connection properties --> <property name="hibernate.connection.url">jdbc:mysql://localhost/test</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.username">root</property> <property name="hibernate.connection.password"></property> <!-- property name="hibernate.connection.pool_size"></property --> <!-- dialect for MySQL --> <property name="current_session_context_class">thread</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <property name="hibernate.show_sql">false</property> <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property> <mapping resource="Utilisateurs.hbm.xml" /> <mapping resource="Contacts.hbm.xml" /> </session-factory> </hibernate-configuration> LIU Sizhao LUO Xin MALICK MANDENGUE Serge 19
  20. 20. Configurations:Contacts.hbm.xml <hibernate-mapping package="CasEtude"> <class name="Contacts" table="contacts" > <meta attribute="sync-DAO">false</meta> <id name="Id" type="integer" column="id" > <generator class="native"/> </id> <property name="Nom" column="nom" type="string" not-null="true" length="10" /> …… </class> </hibernate-mapping> LIU Sizhao LUO Xin MALICK MANDENGUE Serge 20
  21. 21. Configurations:Utilisateurs.hbm.xml <hibernate-mapping package="CasEtude"> <class name="Utilisateurs" table="utilisateurs" > <meta attribute="sync-DAO">false</meta> <id name="Id" type="integer" column="id" > <generator class="native"/> </id> … </class> </hibernate-mapping> LIU Sizhao LUO Xin MALICK MANDENGUE Serge 21
  22. 22. Classes Java 1 fichier hibernateutil.java Pour Contact et Utilisateurs  1 fichier xxx.java  Mapping du tableau  1 fichier xxxAction.java  Classe fonctionnelle  1 fichier xxxBean.java  Managed Bean LIU Sizhao LUO Xin MALICK MANDENGUE Serge 22
  23. 23. Fichier HibernateUtil.java public class HibernateUtil { private static final SessionFactory sessionFactory; static {  try {  // Crée l’objet SessionFactory à partir de hibernate.cfg.xml  sessionFactory = new Configuration().configure().buildSessionFactory(); }  catch (HibernateException ex) {  System.err.println("Initial SessionFactory creation failed." + ex); throw new HibernateException(ex);  }  }  public static SessionFactory getSessionFactory() {  return sessionFactory; }  } LIU Sizhao LUO Xin MALICK MANDENGUE Serge 23
  24. 24. Page de connexion LIU Sizhao LUO Xin MALICK MANDENGUE Serge 24
  25. 25. Côté Administrateur LIU Sizhao LUO Xin MALICK MANDENGUE Serge 25
  26. 26. Administration: Ajout d’uncontact LIU Sizhao LUO Xin MALICK MANDENGUE Serge 26
  27. 27. Côté Utilisateur LIU Sizhao LUO Xin MALICK MANDENGUE Serge 27
  28. 28. Utilisateur: Ajout d’uncontact LIU Sizhao LUO Xin MALICK MANDENGUE Serge 28
  29. 29. Fin de la présentation Merci! Auteurs LIU Sizhao LUO XinMALICK MANDENGUE Serge LIU Sizhao LUO Xin MALICK MANDENGUE Serge 29

×