slam4:orm:etudiants:maxime

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
slam4:orm:etudiants:maxime [2012/12/04 16:38] – [Programme de test] maxime170492slam4:orm:etudiants:maxime [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1
Ligne 77: Ligne 77:
 **1) Précisez ce que charge exactement KObject lors du chargement d'un Objet** \\ **1) Précisez ce que charge exactement KObject lors du chargement d'un Objet** \\
  
 +Lors du chargement d'un Objet, KObject va charger les catégories mais aussi les objets de ces catégories \\
 +SELECT * FROM categorie WHERE categorie.id='1' \\
 +KOBJECT : KCategorie.loadFromDb → {id=1} \\
 +KOBJECT : KConstraintHasMany.load → class metier.KProduit \\
 +SELECT * FROM produit WHERE idCategorie='1' \\
 +KOBJECT : KProduit.loadFromDb → {id=52} \\
 +[...] \\
 +KOBJECT : KProduit.loadFromDb → {id=182} \\
  
  
 **2) Précisez comment sont chargées les instances liées à un objet chargé pour les liens belongsTo et hasMany** \\ **2) Précisez comment sont chargées les instances liées à un objet chargé pour les liens belongsTo et hasMany** \\
  
 +belongsTo: \\ 
 +Pour charger les instances liées à un objet en Many to One, par exemple un produit, KObject va dans un premier temps récupérer le produit à l'aide d'un select. Ensuite KObject va récupérer la catégorie correspondante. \\ 
 +Console: \\ 
 +SQL : KDataBase.sendQuery → SELECT * FROM produit WHERE produit.id='52' \\ 
 +SQL : KDataBase.sendQuery → SELECT * FROM Ligne WHERE idProduit='52' \\ 
 +SQL : KDataBase.sendQuery → SELECT * FROM categorie WHERE id='1' \\ 
 +hasMany: \\ 
 +Pour le cas d'un One To Many KObject va effectuer deux requêtes SQL. Dans un premier temps la catégorie sera chargée ensuite tous les produits appartenant à cette catégorie seront chargés. \\ 
 +Console: \\ 
 +SQL : KDataBase.sendQuery → SELECT * FROM categorie WHERE categorie.id='1' \\ 
 +SQL : KDataBase.sendQuery → SELECT * FROM produit WHERE idCategorie='1' \\
  
 **3) En quoi consiste le chargement paresseux de KObject ?** \\ **3) En quoi consiste le chargement paresseux de KObject ?** \\
  
  
 +Le chargement dit "paresseux" de KObject consiste a ne pas charger chaque objets d'un objet précis à moins de lui en donner l'instruction. \\
 +Exemple : Il n'affichera pas tous les produits d'une catégorie s'il l'utilisateur ne le demande pas. \\
 +Un peu comme Quentin .. :-x \\
 ====== Chargement de listes d'objets ====== ====== Chargement de listes d'objets ======
  
Ligne 95: Ligne 116:
 **1) Interprétez et expliquez le résultat obtenu** \\ **1) Interprétez et expliquez le résultat obtenu** \\
  
 +Voici le résultat obtenu : \\
  
 +<code java|h code java>
 +    System.out.println(categories.showWithMask("{libelle}:\n{produits}\n"));
 +</code> 
 +
 +Explication : On affiche à l'écran les libellés et les produits des catégories affichés par ordre alphabétique.
 ===== Sélection ===== ===== Sélection =====
  
Ligne 152: Ligne 179:
  
  
- +Document réalisé par :  
 +--- //[[maxime170492@gmail.com|maxime]] //
  
  
  • slam4/orm/etudiants/maxime.1354635525.txt.gz
  • Dernière modification : il y a 6 ans
  • (modification externe)