| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
| slam4:orm:etudiants:olivier [2012/12/04 17:03] – [Quatrième partie] plateau | slam4:orm:etudiants:olivier [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 |
|---|
| \\ **1)Comment est déclarée la table assurant la persistance d’un objet ?** | \\ **1)Comment est déclarée la table assurant la persistance d’un objet ?** |
| |
| --> Elle hérite de la classe Kobject. | \\ Elle hérite de la classe Kobject. |
| | <code java|h code Java> |
| | public class KCategorie extends KObject |
| | </code> |
| |
| \\ **2)Comment est déclaré le mapping entre un membre de la classe et un champ de la table relationnelle ?** | \\ **2)Comment est déclaré le mapping entre un membre de la classe et un champ de la table relationnelle ?** |
| |
| --> Le mapping entre un membre de la classe et un champ de la table relationnelle est déclaré dans le constructeur en tant que membre. | \\ Le mapping entre un membre de la classe et un champ de la table relationnelle est déclaré dans le constructeur en tant que membre. |
| <code java|h code Java> | <code java|h code Java> |
| hasMany(KLigne.class); | hasMany(KLigne.class); |
| \\ **3)En quoi consiste le chargement paresseux de KObject ?** | \\ **3)En quoi consiste le chargement paresseux de KObject ?** |
| |
| \\ Le chargement de KObject est qualifié de paresseux parce qu'il charge par défaut tous les objets en rapport avec un autre. | \\ Le chargement de KObject est qualifié de paresseux parce qu'il ne charge pas tous les objets associé à un objet si on le lui demande pas. |
| \\ C'est ce qui ce passe lorsqu'il affiche tous les produits appartenant à une catégorie. | \\ Si on affiche une catégorie KObject n'affichera pas les produits de cette catégorie à moins de le lui demander. |
| |
| ===== Quatrième partie ===== | ===== Quatrième partie ===== |
| Chargement de listes d'objets: | ==== Chargement de listes d'objets: ==== |
| \\ 1)Interprétez et expliquez le résultat obtenu | === Projection === |
| | |
| | |
| | \\ **1)Interprétez et expliquez le résultat obtenu avec cette ligne de code :** |
| | |
| | <code java|h code java> |
| | System.out.println(categories.showWithMask("{libelle}:\n{produits}\n")); |
| | </code> |
| | \\ Cette ligne va permettre de classer l'afficher de tous les produits par catégorie. |
| | \\ Les catégories seront affichées par ordre alphabétique. |
| | \\ Pour chaque catégorie on aura tous les produits correspondant, classés par ordre alphabétique. |
| | |
| | === Selection === |
| | |
| | \\ **1)Combien de requêtes SQL sont exécutées par KObject ?** |
| | |
| | \\ Kobject va effectuer trois requêtes SQL. |
| | \\ La première va permettre de récupérer le produit. |
| | \\ La seconde va récupérer la ligne correspondante. |
| | \\ La troisième récupère la catégorie du produit. |
| | |
| | \\ **2)Comment l'interprétez vous ?** |
| | |
| | \\ Pour faire le lient entre les objets, KObject va procéder par étapes. |
| | \\ D'abord on récupère l'objet pour ensuite, à partir de celui-ci, récupérer les objets en relation. |
| | \\ Exemple du produit, on le récupère pour ensuite savoir à quelle ligne il correspond et à quelle catégorie. |
| | |
| | \\ Remplacement du lien belongsTo sur la classe Produit : |
| | |
| | \\ **3)Combien de requêtes SQL sont maintenant exécutées par KObject ?** |
| | |
| | \\ KObject effectue trois requêtes SQL. |
| | |
| | \\ **4)Comment l'interprétez vous ?** |
| | ....semble pareil...sans soute errreur de ma part... |
| | |
| | \\ 5)Interprétez les requêtes SQL exécutées par KObject suite au Test2: |
| | |
| | \\ KObject effectue une requète de selection de produit appartenant à la catégorie "beauté". |
| | \\ Pour ce faire il va effectuer une requête en spécifiant la jointure entre les tables categorie et produit à l'aide d'un "inner join". |
| | === Sélection avec distinct et projection === |
| | |
| | \\ **1)Expliquer ce que fait le programme:** |
| | |
| | \\ Le programme va rechercher et afficher toutes les catégories ainsi que tous les produits en faisant partis dans lesquelles on peut trouver des produits ayant un pris supérieur à 10. |
| | \\ Le résultat sera classé par catégorie. |
| | |
| | ===== Cinquième partie ===== |
| | ==== Gestion des commandes ==== |
| | \\ **1)Justifiez l'appel des méthodes permettant de mettre en oeuvre la contrainte d'intégrité multiple:** |
| | |
| | ==== Création de commandes ==== |