Récupération des objets métier

Slides:



Advertisements
Présentations similaires
VBA et les actions sur les tables
Advertisements

Formation universitaire à .NET: Introduction à C#
Base de Données / MCD Introduction en utilisant un SGBD simple (Access) Quinio Université Paris Ouest2010 Quinio.
Les Structures. Introduction : Imaginons que lon veuille afficher les notes dune classe délèves par ordre croissant avec les noms et prénoms de chaque.
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
C.
Le publipostage La fonction de fusion permet de créer des documents identiques dans les grandes lignes que l’on personnalise automatiquement à chaque destinataires.
! 1 CREATION D'UNE MAQUETTE EXPORT / IMPORT
Les requêtes Manière de dialoguer avec une base de donnée pour :
Design Pattern MVC En PHP5.
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV EJB Entité Module Java Expert.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
LE LANGAGE SQL : LDD La création de tables L’ordre CREATE CREATE TABLE nom_de_table (Nom_colonne Type_colonne, Nom_colonne Type_colonne,
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Développement d’applications web
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
L’utilisation des bases de données
Le langage PHP 5.
Geti2101 : Systèmes d’Information et Informatique
Les instructions PHP pour l'accès à une base de données MySql
7 mai ème Il faut effectuer le calcul rouge (comme bâbord) pour celui qui est à gauche de sa table et vert (comme tribord) pour celui qui est.
Principes de programmation (suite)
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Mapping Objet-Relationnel
L’utilisation des bases de données
SQL Partie 3 : (LID : Langage d'interrogation de données)
 Ecriture dynamique des Calques, des tableaux HTML
Les Fonctions. Définir une fonction Sections de code indépendantes que lon peut appeler à nimporte quel moment et dans nimporte quel ordre. Bout de code.
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
PROGRAMMATION INFORMATIQUE DINGÉNIERIE II PRO-1024.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Modex Web Dominique Rossin
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 SQL: Requêtes, Programmation et Triggers Chapitre 5, Sections
Aujourd’hui : le Filtre (1/3)
TP n°3 Javascript Contrôle de formulaire
Chapitre 5 : Le langage SQL
Présenté par COMTE Jeremy et DE LAZZARI Thomas Sommaire b Présentation générale b Include b Notion de variables b MySQL.
Editer les objets métier Enterprise Object Framework III.
JavaScript Nécessaire Web.
1 Fichers Binaires, Accès Direct et Objets. 2 Données binaires. Il s'agit ici de lire et écrire des données binaires par opposition à du texte. Pour ce.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
Cours techonologies .NET
Créer des packages.
Surveiller et résoudre le conflit de verrouillage
Annexe 2 entêtes HTTP et cookies. Accéder aux objets requêtes et réponses Ces objets sont disponibles dans les classes clé depuis la méthode awake les.
Modification dynamique
14/04/2015onic1 Zone fonctionnelle Référentiel. 14/04/2015onic2 Sommaire Introduction Cas d’utilisations Le cache principal –La purge –Le remplissage.
 Syntaxe du langage PHP
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II PRO-1024.
Réaliser par: Sadok Amel Cheboui hassiba
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 3 – Classes et objets en Java Master 1 SIGLIS1 Java Lecteur - Chapitre 3 Classes et objets en Java.
Module 4 : Implémentation de l'intégrité des données.
Le rapport de stage Il doit contenir:
Annexe 1 Les classes « Foundation ». Les classes du Foundation Framework Les listes ordonnées NSArray NSMutableArray Les dictionnaires (pairs clé-valeur)
Cours du 5 novembre.
06 Octobre ème.  Il faut effectuer le calcul rouge (comme bâbord) pour celui qui est à gauche de sa table et vert (comme tribord) pour celui qui.
14 mai ème  Il faut effectuer le calcul rouge (comme bâbord) pour celui qui est à gauche de sa table et vert (comme tribord) pour celui qui est.
Interface Java – Oracle : JDBC. I-2 JDBC (Java DataBase Connectivity) : interface API (Application Programming Interface) qui permet d’exécuter des ordres.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
Dreamweaver 2 Plan 1.Calques 2.CSS 3.Modèles 4.Comportements 5.Formulaires 6.Mise en ligne 1 Timothée Devaux Myriam Roudy Dreamweaver 2 Printemps 2008.
LES CLASSES ET LES OBJETS
De Arnault Chazareix :
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
1 Les bases de données Séance 5 -- Le Langage de Définition de Données ou la manœuvre de la structure de la base -- Le Langage de Manœuvre de Données.
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
LINQ. LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions.
Transcription de la présentation:

Récupération des objets métier Enterprise Object Framework II

Accès à la base de données avec EOF L ’abstraction par rapport à la base pas de requête SQL à écrire les résultats obtenus sont des objets

Récupérer les objets Le projet doit contenir un EOModel Les objets de type « EOFetchSpecification » permettent de spécifier les objets à récupérer L ’objet de type EOEditingContext se charge de récupérer les objets Les objets sont récupérés dans un NSArray

Récupérer les objets « Tous les étudiants dont le nom :EOEditingContext :EOFetchSpecification « Tous les étudiants dont le nom commence par `d` » Marc:Etudiant nom=« Dupont » prenom=« Marc » Paul:Etudiant nom=« Durand » prenom=« Paul » :NSArray EOF DB

EOFetchSpecification

EOFetchSpecification :EOQualifier :EOFetchSpecification entityName=``Etudiant`` qualifier= sortOrderings= :NSArray :EOSortOrdeing :EOSortOrdering

dans le code... Récupérer toutes les lignes de la table étudiant EOFetchSpecification spec = new EOFetchSpecification(``Etudiant``,null,null); Récupérer tous les étudiants dont le nom commence par `d` EOQualifier qual = EOQualifier.qualifierWithQualifierFormat("nom like `d*`",null); EOFetchSpecification spec = new EOFetchSpecification(``Etudiant``,qual,null);

...dans le code... Récupérer tous les étudiants dont le nom commence par `d` et dont le tuteur est Rossi NSMutableArray args = new NSMutableArray(); args.addObject("d*"); args.addObject("Rossi"); EOQualifier qual = EOQualifier.qualifierWithQualifierFormat ("nom like %@ AND tuteur.nom = %@",args); EOFetchSpecification spec = new EOFetchSpecification(``Etudiant``,qual,null);

EOSortOrdering :EOFetchSpecification entityName=``Etudiant`` qualifier= sortOrderings= :NSArray :EOSortOrdering key= "nom" selector=CompareAscending :EOSortOrdering key=  "age" selector=CompareDescending

...dans le code... Récupérer tous les étudiants dont le nom commence par `d`, dont le tuteur est Rossi ; les résultats doivent être classés dans l ’ordre alphabétique des noms, si des étudiants ont le même nom, les classer du plus vieux au plus jeune NSMutableArray orderings = new NSMutableArray(); EOSortOrdering sortOrd1 = new EOSortOrdering ("nom",CompareAscending); EOSortOrdering sortOrd2 = new EOSortOrdering ("age",CompareDescending); orderings.addObject(sortOrd1); orderings.addObject(sortOrd2);

...dans le code... NSMutableArray args = new NSMutableArray(); args.addObject("d*"); args.addObject("Rossi"); EOQualifier qual = EOQualifier.qualifierWithQualifierFormat ("nom like %@ AND tuteur.nom = %@",args); EOFetchSpecification spec = new EOFetchSpecification (``Etudiant``,qual,orderings);

EOEditingContext Sait récupérer les objets métiers à partir d ’une EOFetchSpecification Est le gardien du graphe d ’objets métier récupérés : Observe et enregistre toutes les modifications sur les objets métiers récupérés Sait sauvegarder ou annuler les changements effectués sur les objets métiers récupérés

EOEditingContext Chaque session dispose d ’un EOEditingContext par défaut EOEditingContext ec = session().defaultEditingContext();

...dans le code. ... EOFetchSpecification spec = new EOFetchSpecification (``Etudiant``,qual,sortOrderings); EOEditingContext ec = session().defaultEditingContext(); NSArray resultats = ec.objectsWithFetchSpecification(spec);

...dans le code. Le tableau « resultats » contient des objets ! ... EOFetchSpecification spec = new EOFetchSpecification (``Etudiant``,qual,sortOrderings); EOEditingContext ec = session().defaultEditingContext(); NSArray resultats = ec.objectsWithFetchSpecification(spec); Le tableau « resultats » contient des objets !

EOUtilities La classe EOUtilities offre des méthodes statiques pour simplifier la mise en œuvre de récupérations simples Les méthodes de EOUtilities ne permettent pas l ’utilisation de EOSortOrderings Les méthodes de EOUtilities reçoivent toujours en premier argument un EOEditingContext

Dans le code EOEditingContext ec = session().defaultEditingContext(); NSArray resultats; resultats = EOUtilities.objectsForEntityNamed(ec," Etudiant "); resultats= EOUtilities.objectsMatchingKeyAndValue (ec," Etudiant ", "tuteur.nom", "Rossi"); Etudiant etud = (Etudiant)objectMatchingKeyAndValue (ec," Etudiant ", "numeroInscription", "IU4065A");

EOFetchSpecification avec EOModeler

EOFetchSpecification avec EOModeler Ensuite dans le code EOEditingContext ec = session().defaultEditingContext(); NSArray resultats; NSMutableDictionary bindings = new NSMutableDictionary(); bindings.setObjectForKey("Rossi", "nom"); resultats = EOUtilities.objectsWithFetchSpecificationAndBindings (ec, "Etudiant", "EtudiantParNomEtParTuteur",bindings);

Récupération des objets métier Enterprise Object Framework II