Table des matières
Diagramme de classes et Modèle Logique des Données
Le diagramme de classes qui est un des 11 schémas UML est le schéma de base, essentiel au développement de la partie modèle d'une application JEE. Vous trouverez ci-dessous un extrait du diagramme de classes du projet Equida, avec ses règles de gestion et sa transcription en base de données.
Modèle Général
Relation 1 à n = Relation Many-To-One / One-To-Many
- Schéma
- Règles de gestion
Many-To-One : Un cheval est caractérisé par une et une seule race (yearling, trotteur, pure-sang, etc…).
One-To-Many : A une race de cheval correspond plusieurs chevaux.
- Modèle Logique de Données
RACE_CHEVAL (id, libelle, description)
clé primaire : id
CHEVAL (id,nom, sexe, sire, dateNaissance, idRace)
clé primaire : id
clé étrangère : idRace en référence à id de RACE_CHEVAL
L'héritage : Client / Vendeur / Acheteur
- Schéma
- Règles de gestion
Il existe deux categories de clients ayant des propriétés communes : les acheteurs et les vendeurs
- Modèle Logique de Données
Il y a 3 solutions pour implémenter un héritage en base de données.
Solution n°1 : 1 classe seulement sera conservée pour la transformation et on créera une nouvelle table permettant de définir le type de client (acheteur ou vendeur) :
TYPE_ACHETEUR (code, libelle) clé primaire : code
La table client conservent les mêmes propriétés auxquelles on ajoutera une clé étrangère faisant référence à la clé primaire de la table ci-dessus :
CLIENT (id, titre, nom, prénom, .., idTypeAcheteur, codeTypeAcheteur) clé primaire : id clé étrangère : codeTypeAcheteur en référence à code de la table TYPE_ACHETEUR
Solution 2 : on conserve les 2 classes pour la transformation, chacune, “héritant” des propriétés de la classe mère. la notion de CLIENT disparait alors : ACHETEUR (id, titre, nom, prénom,…, adresseMessagerie) clé primaire : id
VENDEUR (id, titre, nom, prénom,…, adresseMessagerie) clé primaire : id
Solution 3 : les 3 classes seront conservées pour la transformation :
CLIENT (id, titre, nom, prénom,…, adresseMessagerie) clé primaire : id
ACHETEUR (idAcheteur) clé primaire : idAcheteur clé étrangère : idAcheteur en référence à id de la table CLIENT
VENDEUR(idVendeur) clé primaire : idVendeur clé étrangère : idVendeur en référence à id de la table CLIENT
Les sous-classes, conservent leurs propres propriétés (lorsqu'il y en a) auxquelles on ajoute une clé primaire qui sera également clé étrangère en référence à la clé primaire de la classe mère.
La classe association
- Schéma
- Règles de gestion
Un cheval participe à plusieurs courses. A une course participent plusieurs chevaux. Pour chaque course, on souhaite conserver la place à laquelle est arrivée le cheval.
- Modèle Logique de Données
CHEVAL (id,nom, sexe, sire, dateNaissance, ….) clé primaire : id
COURSE (id, nom, lieu, date) clé primaire : id
COURSE_CHEVAL (idcheval, idCourse) clé primaire : idCheval, idCourse clé étrangère : idCheval en référence à id de la table CHEVAL clé étrangère : idCourse en référence à id de la table COURSE