Contrôle de rattrapage Master II I - SRI

Documents pareils
TD/TP PAC - Programmation n 3

TD/TP PAC - Programmation n 3

Corrigés des premiers exercices sur les classes

Corrigé des exercices sur les références

Premiers Pas en Programmation Objet : les Classes et les Objets

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Package Java.util Classe générique

Programmer en JAVA. par Tama

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Chapitre 10. Les interfaces Comparable et Comparator 1

Programme Compte bancaire (code)

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Héritage presque multiple en Java (1/2)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

TP1 : Initiation à Java et Eclipse

Introduction à JDBC. Accès aux bases de données en Java

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Java DataBaseConnectivity

Java Licence Professionnelle CISII,

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Java Licence Professionnelle Cours 7 : Classes et méthodes abstraites

Remote Method Invocation (RMI)

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Solutions du chapitre 4

Synchro et Threads Java TM

Chapitre VI- La validation de la composition.

RMI le langage Java XII-1 JMF

RMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

1. Base de données SQLite

Brefs rappels sur la pile et le tas (Stack. / Heap) et les pointeurs

TP Programmation Java / JDBC / Oracle

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Tp 1 correction. Structures de données (IF2)

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

ETUDE DE CAS en UML : GESTION DES COMMANDES DE PIECES FABRIQUEES PAR LA SOCIETE C

Programmation Objet Java Correction

Objets et Programmation. origine des langages orientés-objet

Développement Logiciel

OpenPaaS Le réseau social d'entreprise

1 Modélisation d une base de données pour une société de bourse

Master Exploration Informatique des données DataWareHouse

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.

GOL502 Industries de services

Projet de programmation (IK3) : TP n 1 Correction

Bases Java - Eclipse / Netbeans

Programmation Par Objets

Par Laurent DESECHALLIERS. Mastère Spécialisé en Management de Projets en Milieu Industriel. CESI de Rouen Promotion 2002/2003.

Auto-évaluation Programmation en Java

TP, première séquence d exercices.

Cours Bases de données 2ème année IUT

TD2 Programmation concurrentielle

TD3: tableaux avancées, première classe et chaînes

Langage Java. Classe de première SI

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

Programmation Réseau. Sécurité Java. UFR Informatique jeudi 4 avril 13

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Cours 1: Java et les objets

Présentation du langage et premières fonctions

Programmation par les Objets en Java

Cours 4 : Agrégats et GROUP BY

2 Serveurs OLAP et introduction au Data Mining

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

Le langage SQL Rappels

Remote Method Invocation Les classes implémentant Serializable

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation

Encryptions, compression et partitionnement des données

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Introduction au langage C

Derrière toi Une machine virtuelle!

Programmation d application Bases de données avec Java

Application BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

[APPLICATON REPARTIE DE VENTE AUX ENCHERES]

TP1. Outils Java Eléments de correction

Bases de Données Avancées

CONCOURS DE L AGRÉGATION INTERNE «ÉCONOMIE ET GESTION» SESSION 2015 SECONDE ÉPREUVE

Flux de données Lecture/Ecriture Fichiers

INITIATION AU LANGAGE JAVA

Applet pour visualiser les variables «automate» notifiées

Gestion de base de données

Initiation à JAVA et à la programmation objet.

BASES DE DONNEES ORIENTEES OBJETS BDA10.1

Design patterns. Design patterns - définition. Design patterns - avantages

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Remote Method Invocation en Java (RMI)

Dis papa, c est quoi un bus logiciel réparti?

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

Calcul Parallèle. Cours 5 - JAVA RMI

Master d Informatique Corrigé du partiel novembre 2010

Java 1.5 : principales nouveautés

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle

Transcription:

Université de Batna Module : Bases de données orientées objets Faculté des sciences Département d informatique 2012/2013 Durée : 1h30 Le 19/03/2013 Questions de cours (4 pts) Contrôle de rattrapage Master II I - SRI 1. Dans un SGBDO, qui gère les identifiants des objets? (1 pt) 2. Est-ce que l agrégation est un type de relation entre les classes des objets? (1 pt) 3. Quelle caractéristique représente l exemple suivant :. (1 pt) public class A { code 1; ; public class B extends public A { code 2; ; 4. Est-ce que cette implication est juste (obj1 == obj2) (obj1 =* obj2)? (1 pt) Requêtes OQL (5.5 pts) Dans une entreprise de transport, un SGBDOO qui modélise la gestion de trajets contient une classe appelée «TRAJET» définie comme suit : public class TRAJET { int Num; //Numéro du trajet String Origine; //Ville d origine String Destination; //Ville de destination Date D_Depart; //Date de départ Time H_Depart; //Heure de départ int Duree; //Durée du trajet en minutes Donnez les requêtes OQL qui répondent aux questions suivantes : 1. L ensemble des trajets. (1 pt) 2. Les villes de destination des trajets qui ont la ville de départ «Batna» et une durée de 01 heure au minimum. (1.5 pts) 3. L ensemble des villes de destination, de tous les trajets, qui ne sont pas des villes d origine pour d autres trajets. (1.5 pts) 4. Partitionner l ensemble des trajets selon leurs dates de départ en donnant la taille de chaque partition. (1.5 pts) 1/1

Modélisation (10.5 pts) Un garage de vente de machines possède un système de gestion de bases de données objet modélisant la gestion machines. Cette base de données conserve les informations suivantes : Une machine est une instance d un modèle de machine. Un modèle est caractérisé par son nom, l année de sortie, le numéro de série, son prix de base, et le type du moteur. Le type du moteur est caractérisé par la puissance du moteur. 1. Ecrivez en java les classes suivantes avec les attributs cités ci-dessus : a. MODELE (1 pts) b. MOTEUR (0.5 pts) c. GARAGE (classe principale) (1 pts) 2. Ecrivez la méthode getlowcostmodel() de la classe GARAGE qui retourne le modèle de machine le moins cher. (2 pts) 3. Ecrivez la méthode getmodelbyengine() de la classe GARAGE qui prend en argument un type de moteur et qui affiche les noms des machines qui ont ce type de moteur. (2 pts) 4. Supposant que la base de données du garage est remplie. Ecrivez la méthode main() de la classe GARAGE qui permet de : a. créer un type de moteur avec la puissance de 6 chevaux ; (1 pts) b. créer un modèle de véhicule avec le nom «MODEL1», année de sortie «2010», numéro de série 123456 ; le prix 1000000,00, et un moteur de 6 chevaux de puissance ; (1 pts) c. Afficher les noms des modèles de machines enregistrés dans la base qui ont un moteur de 6 chevaux de puissance ; (1 pts) d. Chercher la machine la moins cher on affichant son nom et son prix ; (1 pts) NB: Le corrigé type vous le trouverez sur le site : http://fac-sciences.univ-batna.dz/cs/enseignants/guezouli_larbi_site/ Bonne chance 2/2

Correction du contrôle final Master II - SRI Questions de cours (4 pts) 1. Dans un SGBDO, qui gère les identifiants des objets? (1 pt) 2. Est-ce que l agrégation est un type de relation entre les classes des objets? (1 pt) 3. Quelle caractéristique représente l exemple suivant :. (1 pt) public class A { code 1; ; public class B extends public A { code 2; ; 4. Est-ce que cette implication est juste (obj1 == obj2) (obj1 =* obj2)? (1 pt) Réponse 1. Les OID sont gérés par le système. 2. Non, l agrégation est un type de relation entre les objets. 3. L exemple représente la caractéristique de polymorphisme. 4. Oui, l implication est juste parce que : obj1 == obj2 obj1 =1 obj2 et obj1 =1 obj2 obj1 =* obj2. Requêtes OQL (5.5 pts) Dans une entreprise de transport, un SGBDOO qui modélise la gestion de trajets contient une classe appelée «TRAJET» définie comme suit : public class TRAJET { int Num; //Numéro du trajet String Origine; //Ville d origine String Destination; //Ville de destination Date D_Depart; //Date de départ Time H_Depart; //Heure de départ int Duree; //Durée du trajet en minutes Donnez les requêtes OQL qui répondent aux questions suivantes : 1. L ensemble des trajets. (1 pt) 2. Les villes de destination des trajets qui ont la ville de départ «Batna» et une durée de 01 heure au minimum. (1.5 pt) 3. L ensemble des villes de destination, de tous les trajets, qui ne sont pas des villes d origine pour d autres trajets. (1.5 pts) 4. Partitionner l ensemble des trajets selon leurs dates de départ en donnant la taille de chaque partition. (1.5 pts) Réponse 1. La requête OQL qui retourne l ensemble des trajets : TRAJET 2. SELECT DISTINCT t FROM t IN TRAJET WHERE t.origine= Batna 3. SELECT DISTINCT t.destination FROM t IN TRAJET WHERE t.origine= Batna AND t.duree 60 3/3

4. SELECT DISTINCT t.destination FROM t IN TRAJET WHERE t.destination NOT IN (SELECT t1.origine FROM t1 IN TRAJET) 5. GROUP t IN TRAJET BY ( dd : t.d_depart ) WITH ( nbtrajets : COUNT(partition) ) Modélisation (10.5 pts) Un garage de vente de machines possède un système de gestion de bases de données objet modélisant la gestion machines. Cette base de données conserve les informations suivantes : Une machine est une instance d un modèle de machine. Un modèle est caractérisé par son nom, l année de sortie, le numéro de série, son prix de base, et le type du moteur. Le type du moteur est caractérisé par la puissance du moteur. 1. Ecrivez en java les classes suivantes avec les attributs cités ci-dessus : a. MODELE (1 pts) public class Modele { public String nom; public int annee; public String serie; public float prix; public Moteur moteur; b. MOTEUR (0.5 pts) public class Moteur { int puissance; c. GARAGE (classe principale) (1 pts) public class Garage { public static String DBOFILENAME = "c:/mygarage.dbo"; public ObjectContainer db; Garage() { //Préparation de la base de données objet new File(DBOFILENAME).delete(); ObjectContainer db = Db4o.openFile(DBOFILENAME); public void main() { try { //Traitement des questions suivantes finally { db.close(); 2. Ecrivez la méthode getlowcostmodel() de la classe GARAGE qui retourne le modèle de machine le moins cher. (2 pts) 4/4

public Modele getlowcostmodel() { Modele my_modele = null, lowcostmodel = null; float min = 9999999F; ObjectSet result = db.get(modele.class); for (int i=1; i<=result.size(); i++) { my_modele = (Modele) result.next(); if (my_modele.prix < min) { min = my_modele.prix; lowcostmodel = my_modele; return lowcostmodel; 3. Ecrivez la méthode getmodelbyengine() de la classe GARAGE qui prend en argument un type de moteur et qui affiche les noms des machines qui ont ce type de moteur. (2 pts) public void getmodelbyengine(moteur my_moteur) { Modele my_modele = new Modele(); my_modele.moteur = my_moteur; ObjectSet result = db.get(my_modele); for (int i=1; i<=result.size(); i++) { Modele modele_found = (Modele) result.next(); System.out.println("Modèle: " + modele_found.nom); 4. Supposant que la base de données du garage est remplie. Ecrivez la méthode main() de la classe GARAGE qui permet de : a. créer un type de moteur avec la puissance de 6 chevaux ; (1 pts) Moteur my_moteur = new Moteur(); my_moteur.puissance = 6; b. créer un modèle de véhicule avec le nom «MODEL1», année de sortie «2010», numéro de série 123456 ; le prix 1000000,00, et un moteur de 6 chevaux de puissance ; (1 pts) //Création du modèle "MODELE1" Modele my_modele1 = new Modele(); my_modele1.nom = "MODELE1"; my_modele1.annee = 2010; my_modele1.serie = "123456"; my_modele1.prix = 1000000F; my_modele1.moteur = my_moteur; c. Afficher les noms des modèles de machines enregistrés dans la base qui ont un moteur de 6 chevaux de puissance ; (1 pts) // Affichage des noms des modèles de machines enregistrés dans la base getmodelbyengine(my_moteur); 5/5

d. Chercher la machine la moins cher on affichant son nom et son prix ; (1 pts) //Recherche la machine la moins cher Modele modele_moins_cher = getlowcostmodel(); System.out.println("La machine la moins cher est: " + modele_moins_cher.nom + " qui a le prix: " + modele_moins_cher.prix); 6/6