Différences
Ci-dessous, les différences entre deux révisions de la page.
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:45] – [Chargement d'un objet] maxime170492 | slam4:orm:etudiants:maxime [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 78: | Ligne 78: | ||
Lors du chargement d'un Objet, KObject va charger les catégories mais aussi les objets de ces catégories \\ | 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=' | + | SELECT * FROM categorie WHERE categorie.id=' |
- | KOBJECT : KCategorie.loadFromDb → {id=1} | + | KOBJECT : KCategorie.loadFromDb → {id=1} |
- | KOBJECT : KConstraintHasMany.load → class metier.KProduit | + | KOBJECT : KConstraintHasMany.load → class metier.KProduit |
- | SELECT * FROM produit WHERE idCategorie=' | + | SELECT * FROM produit WHERE idCategorie=' |
- | KOBJECT : KProduit.loadFromDb → {id=52} | + | KOBJECT : KProduit.loadFromDb → {id=52} |
- | KOBJECT : KProduit.loadFromDb → {id=56} | + | [...] \\ |
- | KOBJECT : KProduit.loadFromDb → {id=62} | + | KOBJECT : KProduit.loadFromDb → {id=182} |
- | KOBJECT : KProduit.loadFromDb → {id=71} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=73} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=77} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=78} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=84} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=98} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=107} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=113} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=114} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=116} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=117} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=118} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=131} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=132} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=133} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=134} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=135} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=136} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=137} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=154} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=162} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=167} | + | |
- | KOBJECT : KProduit.loadFromDb → {id=168} | + | |
- | 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=' | ||
+ | SQL : KDataBase.sendQuery → SELECT * FROM Ligne WHERE idProduit=' | ||
+ | SQL : KDataBase.sendQuery → SELECT * FROM categorie WHERE id=' | ||
+ | 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=' | ||
+ | SQL : KDataBase.sendQuery → SELECT * FROM produit WHERE idCategorie=' | ||
**3) En quoi consiste le chargement paresseux de KObject ?** \\ | **3) En quoi consiste le chargement paresseux de KObject ?** \\ | ||
+ | Le chargement dit " | ||
+ | Exemple : Il n' | ||
+ | Un peu comme Quentin .. :-x \\ | ||
====== Chargement de listes d' | ====== Chargement de listes d' | ||
Ligne 127: | 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(" | ||
+ | </ | ||
+ | |||
+ | Explication : On affiche à l' | ||
===== Sélection ===== | ===== Sélection ===== | ||
Ligne 184: | Ligne 179: | ||
- | + | Document réalisé par : | |
+ | --- // | ||