Institut Galilée Environnement et Langages Evolués
Année 2016-2017 Master 2 EID-PLS
TP 2 : PERSISTANCE DES OBJETS JAVA
Gestion de projets en entreprise
Résumé
L’objectif de ce TP est d’être capable de réaliser une application Java de gestion de projets dans une entreprise
composée de départements situés dans des villes différentes.
Il s’agit d’affecter des projets à des employés, répartis dans des départements.
Voici les classes d’objets utilisés :
—Departement qui représente un département de l’entreprise : dispose d’un identifiant, d’un nom et
d’un lieu.
—Employe qui représente un employé de l’entreprise, et qui hérite de la classe Personne : dispose d’un
identifiant, d’un nom, d’un supérieur.
—Projet qui représente un projet dans lequel des employés peuvent participer : dispose d’un identifiant
et d’un libellé
—Participation qui représente la participation d’un employé à un projet, avec sa fonction.
Règles de gestion :
— Un employé appartient à un département et peut participer à des projets. Il a une fonction (et une
seule) dans chaque projet auquel il participe (par exemple, chef de projet ou trésorier ou simple
membre).
— Plusieurs employés peuvent participer à un même projet.
— Un employé a au plus un supérieur.
— Un employé appartient à au plus un département.
— Les associations entre les employés et les départements et entre les employés et les projets sont
bidirectionnelles.
— L’association entre un employé et son supérieur est unidirectionnelle (d’un employé vers son supérieur,
s’il existe).
Plusieurs technologies vues en cours sont utilisées dans ce TP :
— API JPA
— Persistance
— tests unitaires
— Derby
Dans ce TP, les tables sont créées automatiquement.
1 Préparation
NetBeans contient par défaut la base de données derby. Les tables qu’on y déclare se trouvent sous le répertoire
$HOME/.netbeans-derby.
— L’onglet Services donne sous Databases les bases de données utilisables (Java DB pour derby), les drivers
disponibles, les connecteurs possibles (un connecteur par base de donnée créée). Un tel connecteur permet
d’accéder directement à la base de donnée, de voir les tables et leur contenu, d’effectuer des requêtes SQL soit
par l’interface, soit par exécution de la requête explicite directement.
— L’onglet Services donne sous Servers les serveurs d’application sur lesquels sont déployées les applications
développées sous Netbeans. En l’occurence Glassfish est fourni en standard. BEA WebLogic et Websphere sont
d’autres serveurs d’application. Ces serveurs intègrent aussi un serveur JNDI qui permettra de faire le lien entre
les objets publiés (base de données, servlets, ...).
1. Modélisez le diagramme de classes sur papier
2. Sous Netbeans, créez un premier projet Java contenant un dossier lib. Intégrez la librairie DerbyClient disponible
là : https://lipn.univ-paris13.fr/~fortier/Enseignement/Lee/librairies/
3. Créez une base de donnée pour le projet : sous l’onglet Services, clic droit sur Java DB - Create Database :
— nom : entreprise
— user name : entreprise
— password : mdp
— (port modifiable, 1527 par défaut)
4. Définissez la classe Personne
1