TP 1 Hibernate
TP 1 Hibernate
TP 1 Hibernate
Exercice 1 :
On souhaite créer une application pour la gestion des produits, pour ce faire nous proposons le diagramme de
classe suivant :
1. Créer un projet JAVA sous Netbeans nommé « H1 », et rajouter les bibliothèques nécessaires
(Hibernate-JPA et le Pilote de la base de données MySql).
2. Créer l’entité Produit dans le package « ma.projet.entity », rajouter les annotations (Entity, Id,
GeneratedValue, Column, Table…).
3. Créer une base de données nommée « H1 » sous MySql.
4. Créer le fichier de configuration Hibernate « hibernate.cfg.xml » dans le package « ma.projet.config ».
5. Créer la classe HibernateUtil permettant de créer une instance de la classe « SessionFactory » dans le
package « ma.projet.util ».
6. Créer l’interface IDao dans le packahe « ma.projet.dao » :
7. Créer la classe service « ProduitService » qui implémente l’interface IDao dans le package
« ma.projet.service » et implémenter les différentes méthodes
Exercice 2 :
On souhaite développer une l’application de gestion de stock pour un magasin de vente des produits
informatiques.
Les travaux de l’équipe chargée de l’analyse et de la conception ont abouti au diagramme de classe
suivant :
A. Couche persistance
1. Développer les classes entités dans le package « ma.projet.classes ».
2. Créer le fichier de configuration hibernate.cgf.xml dans le package « ma.projet.config ».
3. Créer la classe HibernateUtil dans le package « ma.projet.util ».
B. Couche service
Page 2 sur 2
5. Créer une méthode permettant d’afficher les produits commandés dans une commande donnée :
Exemple :
Commande : 4 Date : 14 Mars 2013
Liste des produits :
Référence Prix Quantité
ES12 120 DH 7
ZR85 100 DH 14
EE85 200 DH 5
6. Créer une méthode permettant d’afficher la liste des produits dont le prix est supérieure à 100
DH dans la classe ProduitService en utilisant une requête nommée.
7. Créer des programmes de tester les questions ci-dessus.
Exercice 3 :
Afin d’imputer le temps passé dans un projet sur son coût global, un bureau d’études se propose de
mettre en place une application de gestion de projet.
Les travaux de l’équipe chargée de l’analyse et de la conception ont abouti au diagramme de classe
suivant :
Page 3 sur 2
ENSAJ
Exemple :
7. Créer une méthode permettant d’afficher la liste des tâches dont le prix supérieure
à 1000 DH dans la classe TacheService en utilisant une requête nommée.
8. Créer une méthode permettant d’afficher la liste des tâches réalisées entre deux dates
dans la classe.
9. Créer des programmes permettant de tester les questions ci-dessus.
Page 4 sur 6
M. LACHGAR
ENSAJ
Travail à rendre :
On souhaite développer une application de gestion de l’état civil des citoyens de notre province.
Les travaux de l’équipe chargée de l’analyse et de la conception ont abouti au diagramme de classe
suivant :
Page 5 sur 6
M. LACHGAR
ENSAJ
7. Créer une méthode dans la classe FemmeService permettant de faire appel à la requête
de la question 6. (1 pt)
8. Créer une méthode permettant de renvoyer le nombre des hommes qui sont mariés par 4
femmes entre deux dates en utilisant l’API CRITERIA. (1 pt)
9. Créer une méthode permettant de renvoyer les mariages d’un homme donné en
paramètre comme suit : (2 pts)
Page 6 sur 6
M. LACHGAR