Ceci est une ancienne révision du document !
Création des classes métier
Produits et catégories
1.Comment est déclarée la table assurant la persistance d’un objet ?
S'il hérite de KObject public class KCategorie extends KObject
2.Liste numérotéeComment est déclaré le mapping entre un membre de la classe et un champ de la table relationnelle ?
hasMany(KLigne.class); un produit correspond à une ligne, il y a un produit par ligne belongsTo(KCategorie.class); les produits correspondent à une catégorie, il y a des produits dans une catégorie
3.Comment est déclarée la clé primaire de la table ?
keyFields="id"; , la clé primaire est déclaré en keyFields
4.Réaliser un tableau montrant la correspondance de type (entier, chaine, etc.) entre les propriétés d’une classe et les champs d’une table
Java | SQL | |
---|---|---|
Entier | int | int |
Chaîne de caractère | string | varchar |
Flottant | float | float |
5.Montrez à l’aide d’un schéma (par ex. deux classes liées au dessus de deux tables liées) comment se paramètre le lien bidirectionnel entre deux classes (en spécifiant les éléments à fournir dans le constructeur)
Programme de test
1.À quoi correspond la méthode kstart() ?
- code Java
public static void main(String[] args){ try{ Ko.kstart(); KCategorie aCategorie=new KCategorie("Presse"); aCategorie.add(Ko.kdatabase()); KProduit aProduit= new KProduit("Programmez!", 10, aCategorie); aProduit.add(Ko.kdatabase()); Ko.kstop(); }
La méthode kstart() correspond au démarrage de l'application java qui permet d'ajouter un produit dans la base de données et d'ajouter une catégorie
2.Comment ont été traduits les liens objet entre le membre categorie et produits entre ces classes dans les tables de la base ?
Cela a étais traduit par le fait que l'id de la table “catégorie” s'est mis en clé étrangère dans la table “produits”.
3.Quelles requêtes SQL ont été créées par KObject pour réaliser la persistance ?
Insertion de la valeur dans la catégorie\\ INSERT INTO Categorie(libelle) VALUES('Presse')
Insertion de la valeur dans la table produit\\ INSERT INTO produit(idCategorie,prix,nom) VALUES('-1','3.0','Programmez!')
4.Que se passe t-il si l'insertion de la catégorie échoue ?