CAHIER DE TRAVAUX PRATIQUES OB300

Dimension: px
Commencer à balayer dès la page:

Download "CAHIER DE TRAVAUX PRATIQUES OB300"

Transcription

1 CAHIER DE TRAVAUX PRATIQUES OB300 1/43

2 Sommaire TP 01 - Installation de la JDK. 3 TP 02 - Ecriture d une première classe java. 6 TP 03 Installation d Eclipse et création d un premier projet. 8 TP 04 La Javadoc. 13 TP 05 Le packaging avec Jar 16 TP 06 Implémentation d un modèle UML 19 TP 07 Mise en œuvre de l héritage 20 TP 08 Mise en œuvre de la surcharge, redéfinition et polymorphisme 21 TP 09 Interface 24 TP 10 JDBC 26 TP 11 Collection 33 TP 12 JUnit 35 TP 13 Internationalisation 38 TP 14 Entrée / Sortie 39 TP 15 Swing 41 TP 16 Log4J 43 2/43

3 TP 01 - Installation de la JDK Installation de la JDK. 1. Lancer l installateur de la JDK depuis le CD (D:\logiciels\runtime\j2sdk-1_4_2_10-windowsi586-p.exe) et suivre les étapes proposée 3/43

4 2. A l issue de l installation deux répertoires ont été créés : C:\j2sdk1.4.2_10 : constitue le répertoire de la JDK C:\Program Files\Java\j2re1.4.2_10 : constitue le répertoire de la JRE Installation de la documentation de la JDK. 1. Dézipper l archive de la documentation de la JDK du CD (D:\logiciels\runtime\ j2sdk-1_4_2- doc.zip) vers le repertoire C:\j2sdk1.4 2_10\docs.. 2. Deux entrées principales sont à connaitre : C:\j2sdk1.4.2_10\docs\index.html. Ce lien donne accès à l ensemble de la documentation SUN. 4/43

5 C:\j2sdk1.4.2_10\docs\api\index.html Ce lien donne accès à la description de l ensemble des classes java. 3. Positionner la variable d environnement JAVA_HOME à C:\j2sdk1.4.2_10 4. Enrichir la variable d environnement PATH avec %JAVA_HOME%\bin afin de rendre accessible les outils de la JDK à n importe quel endroit de l arborescence. 5. Vérifier l installation en lançant la commande java version Cette commande doit retourner la version du JDK installée sur votre machine. Résultat attendu : java version "1.4.2_10" 5/43

6 TP 02 - Ecriture d une première classe java Création de la classe LanceurHelloWorld. 1. A l aide d un éditeur de texte écrire la classe Java LanceurHelloWorld suivante et l enregistrer dans le fichier LanceurHelloWorld.java sous le répertoire C:\Proje sob300 t : public class LanceurHelloWorld { public static void main(string[] args) { System.out.println("Bonjour! "); 2. Se positionner dans le répertoire C:\ProjetsOB300 et compiler le fichier LanceurHelloWorld.java via la commande javac LanceurHelloWorld.java 3. Vérifier la présence du byte code associé : LanceurHelloWorld.class 4. Lancer le programme principal via la commande java LanceurHelloWorld 5. Vérifier l affichage du résultat suivant : Bonjour! Prise en compte des arguments de la ligne de commande. 1. Modifier le corps du main de la classe LanceurHelloWorld comme suit afin de gérer les arguments de la ligne de commande et manipuler les commentaires. public class LanceurHelloWorld { /* La méthode main est statique. Ce qui signifie qu'elle est chargée en mémoire au démarrage de l'application et peut donc être utilisée avant la création de tout objet. */ public static void main(string[] args) { //Affichage de l argument saisi sur la ligne de commande System.out.println("Bonjour Monsieur " + args[0]); 2. Répéter les étapes 2. et 3. précédentes. 3. Lancer le programme principal via la commande java LanceurHelloWorld arg1 (avec arg1=smith par exemple) 4. Vérifier l affichage du résultat suivant : Bonjour Monsieur Smith. 6/43

7 Création d une archive java (fichier jar). (optionnel) 1. Se positionner dans le répertoire C:\ProjetsOB Constituer un jar contenant le bytecode de la classe LanceurHelloWorld via la commande jar cvf hello.jar LanceurHelloWorld.class 3. Relire le contenu de ce jar via la commande jar tvf hello.jar Remarques : L utilitaire jar de constitution d un jar à rajouté le fichier META-INF/MANIFEST.MF Ce jar constitue une unité de livraison, pouvant être incorporé dans le CLASSPATH de la compilation et d exécution d un autre projet. Création d une archive java exécutable. (optionnel) 1. Dans le répertoire de C:\ProjetsOB300, créer un fichier texte nommé manifestehelloworld.txt 2. Le modifier pour qu il indique quelle est porteuse de la méthode main Manifest-Version: 1.0 Main-Class: LanceurHelloWorld Remarque : Ce fichier doit se terminer par un retour à la ligne après LanceurHelloWorld, sinon cette ligne ne sera pas analysée. 3. Renommer manifestehelloworld.txt en manifestehelloworld.mf. 4. Créer un jar comprenant LanceurHelloWorld.class et le fichier manifeste manifestehelloworld.mf via la commande jar cmf manifestehelloworld.mf hello.jar LanceurHelloWorld.class 5. Exécuter le jar hello.jar via la commande java jar hello.jar Smi h t 6. Vérifier l affichage du résultat suivant : Bonjour Monsieur Smith. 7/43

8 TP 03 Installation d Eclipse et création d un premier projet Installation d éclipse 1. Dézipper l archive Eclipse 3.1-sdk-1.0-win32.zip du CD vers le répertoire C:\Program Files. 2. Eclipse est installé à l issue de la décompression. 3. Pour le démarrer lancer C:\Program Files\eclipse311\eclipse\eclipse.exe (Se créer un raccourci sur le bureau). Création d un projet sous Eclipse 1. Sélectionner dans eclipse les menus suivants : File > New > Project 2. Choisir Java Project, puis Next 8/43

9 3. Donner le nom GestionConges à votre projet. 4. Cocher Create separate source and output folders pour séparer les sources du byte code, puis Next. 5. Finish 9/43

10 Création d un package 1. ClicK droit sur le dossier src su projet 2. New > Package 3. Nommer le package lanceur 10/43

11 Création d une classe 4. Click droit sur le package lanceur dans lequel ajouter la classe 5. New > Class 6. Nommer la classe LanceurHelloWorld 7. Cocher la case public static void main pour générer automatiquement le squelette de la méthode main 11/43

12 8. Coder l exemple suivant : Configuration d exécution public static void main(string[] args) { System.ou t.println("hello World!"); 1. Click droit sur la classe LanceurHelloWorld 2. Obtention du message suivant dans la console. 12/43

13 TP 04 La Javadoc Rédaction des commentaires javadoc Les commentaires de la javadoc s écrivent entre les balises /** */ La javadoc prend en compte les balises html et différents ) que l on peut visualiser avec ctrl + espace quand le curseur est entre les balises javadoc. La javadoc est importante car elle permet de générer la documentation des classes, méthodes et packages de l application. Il faut la rédiger au moment de la création des classes 1. Positionner des commentaires javadoc Génération de la javadoc 1. Sélectionner le projet en cours et aller dans le menu Project > Generate Javadoc 2. Sélectionner la visibilité Private, afin de créer la documentation de toutes les classes de l application. 13/43

14 1. Sélectionner la librairie rt.jar qui représente l API principale de java. Cela permet de créer un lien vers les classes de cette API qui sont utilisées dans le projet (toutes les classes héritent implicitement de la classe de base java.lang.object) 14/43

15 1. Cocher Save the settings o f this Javadoc export as an Ant script Cela permet d enregistrer la configuration de génération de la javadoc dans un script Ant. Pour regénérer ultérieurement la javadoc, il suffira d exécuter ce script (Clic droit sur le script javadoc.xml > Run > Ant Build 2. Cocher la case Open generated index file in browser pour visualiser la doc générée. 15/43

16 TP 05 Le packaging avec Jar Création d un composant : Packager l application en JAR 1. Créer un dossier META-INF à la racine du projet. Ce dossier contient les fichiers de description des composants 2. Click droit sur le projet 3. Expor er t 4. Sélectionner le projet pour lequel vous souhaiter générer la documentation javadoc 16/43

17 Remarque : Le fichier jardesc permet de sauvegarder la configuration de création du JAR. Pour recompiler l archive JAR, il suffit ensuite de faire un clic droit sur le fichier et sélectionner Create JAR. Pour modifier la configuration, un clic droit sur le fichier et sélectionner Open JAR Packager 5. Générer le fichier MANIFEST.MF qui contiendra le chemin vers la classe de démarrage 6. Sélectionner la classe de démarrage LanceurHelloWorld 17/43

18 Exécution du composant 7. Ouvrir un invite de commande DOS 8. Se placer dans le dossier du composant JAR 9. Exécuter le composant : java jar gestionconges.jar 10. Obtention du résultat : Hello World! 18/43

19 TP 06 Implémentation d un modèle UML Objectif : Implémenter un diagramme de classes UML Construire une classe avec ses attributs, son constructeur et ses méthodes Utiliser les getters er setters Manipuler les instances d objets créées 1. Implémenter le diagramme de classes UML suivant : Remarques : Créer le package domaine afin d y décliner les classes métiers La génération des getters et des setters se fera automatiquement via l assistant eclipse : Click droit dans le code source > source > Generate Getters and Setters En ce qui concerne le corps des différentes méthodes, se contenter pour le moment d une trace à l écran : Exemple pour la classe Employe : public void poserconge(string datedebut, String datefin) { System.out.println("Monsieur " + prenom + " " + nom + " pose un conge du " + datedebut + " au " + datefin); 2. Créer le package lanceur. 3. Ecrire dans ce package la classe LanceurGestionConges (Classe comportant un Main) afin d instancier un Manager et deux Employes. 4. Tester l invocation des différentes méthodes sur les différentes instances d Employe et de Manager. Remarque : Nous substituerons ce lanceur par la suite par l implémentation d une classe de test unitaire via JUnit. 19/43

20 TP 07 Mise en œuvre de l héritage Objectif : Modifier l implémentation du diagramme de classes UML Mise en œuvre de l héritage Manipuler les instances d objets créées 1. Modifier l implémentation du diagramme de classes UML suivant : Remarques : L héritage à permis de factoriser des attributs communs (id, nom et prénom) et une méthode commune (poserconge). 2. Les attributs id, nom et prénom de la classe Manager sont hérités de la classe Employe. Ces attributs étant privés au niveau de la classe Employe, vous devez constater que leur utilisation en direct pose un problème de compilation. Utiliser les accesseurs publics associés pour y accéder. 3. Tester le lanceur LanceurGestionConges. Vous devez obtenir le même résultat que lors du TP précédent. 4. Que faudrait-il faire pour pouvoir accéder en direct à ces attributs? 5. Tester à nouveau en ayant modifié la visibilité (private, public, protected) des attributs de la classe Employe. 6. Le constructeur de Manager doit à ce stade du développement contenir des appels aux setters des différents attributs privés. Modifier le constructeur de Manager afin qu il invoque son constructeur ancêtre (celui d Employe) via le mot clef java super. Ceci constitue une bonne façon de faire en matière de construction d objets. public Manager (String pnom, String pprenom, int pid){ super(pnom, pprenom, pid); 20/43

21 TP 08 Mise en œuvre de la surcharge, redéfinition et polymorphisme Objectif : Modifier l implémentation du diagramme de classes UML Mise en œuvre de la surcharge, Mise en œuvre de la redéfinition et du polymorphisme 1. implémentation du diagramme de classes UML suivant : Remarque : Les attributs soulignés de la classe DemandeConges, correspondent à des attributs sta ic. t Pour mémoire, ces attributs sont accessibles en dehors de toute instanciation. public final static String REFUS = "refus"; public final static String ACCORDE = "valide"; public final static String ATTENTE = "en attente"; 2. La surcharge d'une méthode ou d un constructeur permet de définir plusieurs fois une même méthode/constructeur avec des arguments différents. Le compilateur choisi la méthode qui doit être appelée en fonction du nombre et du type des arguments. Ceci permet de simplifier l'interface des classes vis à vis des autres classes. 21/43

22 Surcharger les constructeurs de Employe, Manager et DemandeConges via le mot clef java this Exemple 1 : public Manager (String pnom, String pprenom, int pid){ super(pnom, pprenom, pid); public Manager (String pnom, String pprenom){ this(pnom, pprenom, 0); public Manager (String pnom){ this(pnom, «Richard», 0); public Manager (){ this(«durant», «Richard», 0); Exemple 2 : public DemandeConges(String pdatedebut, String pdatefin, String petatvalidation) { datedebut = pdatedebut; datefin = pdatefin; etatvalidation = peetatvalidation; public DemandeConges(String pdatedebut, String pdatefin){ this(pdatedebut, pdatefin, DemandeConges.ATTENTE); 3. La redéfinition d'une méthode héritée doit impérativement conserver la déclaration de la méthode parent (type et nombre de paramètres, la valeur de retour et les exceptions propagées doivent être identique). Si la signature de la méthode change, ce n'est plus une redéfinition mais une surcharge. Cette nouvelle méthode n'est pas héritée : la classe mère ne possède pas de méthode possédant cette signature. la redéfinition de la méthode poserconges dans la classe Manager exprime le fait que le savoir faire métier est différent dans les deux classes : La méthode poserconge() pour l employé déclenche une demande avec une attente de validation. La méthode poserconge() pour le manager déclenche une demande qui est automatiquement validée. 4. Redéfinir la méthode poserconge r( ) de la classe Manager. Exemple : public void poserconge(string datedebut, String datefin) { System.ou.println("Monsieur t " + getprenom() + " " + getnom() + " pose un conge du " + datedebut + " au " + datefin); System.ou t.println("etant manager, il valide ses propres conges") ; 22/43

23 Remarque : On constate qu une partie du code de poserconge() est identique dans les deux classes Employe et Manager. Pour éviter la duplication de code, une bonne façon de faire est la suivante : public void poserconge(string datedebut, String datefin) { super.poserconge(datedebut, datefin) ; System.ou t.println("etant manager, il valide ses propres conges") ; 5. Redéfinir la méthode tostring() héritée de la super classe Object, afin de tracer les caractéristiques d un objet : Exemple : public String tostring(){ return "Employe : " + id + ", " + prenom + ", " + nom ; Remarque : La méthode tostring() est automatiquement invoquée lorsque l on souhaite tracer un objet. Exemple : Employe emp = new Employe("Smith", " John", 2) ; System.ou t.println(emp) ; Renverra la chaîne : Employe : 2, John, Smith ; Par défaut la méthode tostring() retourne le nom de la classe d instanciation de l objet suivi de sa référence. 6. Modifier le lanceur LanceurGestionConges afin de : procéder à différentes instanciations (différents constructeurs) tracer l état des objets. 7. Tester le lanceur LanceurGestionConges et vérifier la redéfinition de la méthode poserconge 23/43

24 TP 09 Interface Objectif : Modifier l implémentation du diagramme de classes UML Création d une interface IPersonnel Manipulation des objets Employe et Manager par le biais de leur interface IPersonnel On considère un acteur tiers, la classe ServicePaie, qui doit récupérer la liste de tout le personnel à la fin de chaque mois afin d établir les feuilles de paie de chacun. Cet acteur considère tout type de Personnel (Employe et Manager). Il ne manipule que la méthode consulterconges() de chacun des membres du personnel. En conséquence, pour des raisons de sécurité, cet acteur n a pas accès aux accesseurs des classes Employe et Manager, ni à la méthode validerconge() de la classe Manager 1. implémentation du diagramme de classes UML suivant : Remarque : Le type Collection sera vu prochainement dans le chapitre ad hoc. 2. Créer l interface IPersonnel dans le package domaine ayant à son contrat de service la méthode consulterconges(). public Collection consulterconges(); Cette méthode permet de consulter les congés posés par un Employé ou par un Manager. L idée est que cette interface puisse être utilisée par une classe tiers ServicePaie que vous allez implémenter. 24/43

25 3. Faire en sorte que la classe Employe implémente l interface IPersonnel Remarque : La classe Manager, héritant de la classe Employe, est vue également de façon implicite comme une implémentation de l interface IPersonnel. L idée est donc qu un objet Employe ou Manager puisse être manipulé par le biais de son interface IPersonnel. 4. Redéfinir la méthode consulterconges() Exemple : public Collection consulterconges() { System.ou t.println("consultation des conges de " + prenom + " " + nom); return null; 5. Créer la classe ServicePaie dans le package domaine. Cette classe possède le savoir faire métier listercongepersonnel public void listercongepersonnel(ipersonnel personnel){ personnel.consulterconges(); Cette méthode demande l affichage des congés d un membre du personnel. 6. Modifier le lanceur LanceurGestionConges afin de : Créer une instance de ServicePaie. Invoquer sur cette instance la méthode listercongepersonnel en lui passant successivement une instance d Employe et de Manager 7. Tester le lanceur LanceurGestionConges et vérifier le comportement. Remarque : Dans une application réelle, on pourra concevoir que l instance de ServicePaie obtient la liste de tout le personnel à partir d une base de données et invoque de façon itérative la méthode listercongepersonnel. 25/43

26 TP 10 JDBC Installation de mysql Installer mysql par le biais de WAMP (Window Apache MySQL PHP). 1. Lancer l installation de WAMP depuis l exécutable «wamp5_ exe» fourni sur le CD (D:\logiciels\outils) 26/43

27 Démarrer les services Démarrer PhpMyAdmin pour l administration de la base MySQL Création de la base de données formation 1. Saisir formation comme nom de base de données 2. Appuyer sur le bouton créer 27/43

28 3. Dans l onglet SQL, zone «Emplacement du fichier texte» partir à la recherche du script de création des tables formation.sql fourni sur le CD (D:\ distribution\mysql) Ajouter les pilotes de connectivité au SGBDR Pour se connecter à une base de données, il faut utiliser des pilotes de connectivité fournis par l éditeur. Nous allons utiliser les pilotes Mysql. 1. Retourner sous Eclipse 2. Ajouter les pilotes dans le projet a. Créer un dossier lib dans le projet b. Importer le composant mysql-connector-java bin.jar i. Clic droit sur le dossier lib ii. Importer iii. File System 28/43

29 3. Ajouter la librairie mysql au classpath du projet a. Click droit sur le projet b. Propriétés c. Sélectionner la catégorie Java Build Path d. Onglet Librairies e. Add JARs 29/43

30 Implémentation métier 1. implémentation du diagramme de classes UML suivant : Remarque : Rajout d une méthode poserconge dans les classes Employe et Manager acceptant en argument une demande de congés. 2. Implémenter la méthode consulterconges() afin d aller rechercher en base tous les congés posés par un membre du personnel identifié par son ID_employe. "SELECT datedebut, datefin, etat FROM conges WHERE ID_employe='"+ id +"'" Référez-vous au cours pour reprendre le squelette JDBC à mettre en œuvre. Dans le parcours du recordset se contenter pour le moment de mettre à jour et d afficher une instance de DemandeConges avec les datedebut, datefin et etat récupérés de la base de données. Exemple : DemandeConges demande = new DemandeConges(); while(rs.next()){ demande.setdatedebut(rs.getstring("datedebut")); demande.setdatefin(rs.getstring("datefin")); demande.setetatvalidation(rs.getstring("etat")); System.out.println(demande); 30/43

31 3. Tester la méthode consulterconges() via le LanceurGestionConges sur les instances suivantes : Employe emp1 = new Employe("Watson", "John", 1); Manager manager = new Manager("Homes", "Sherlock", 2); Vous devriez obtenir un résultat similaire à celui-ci : Consultation des conges de John Watson DemandeConges : , , refus DemandeConges : , , valide DemandeConges : , , en attente Consultation des conges de Sherlock Homes DemandeConges : , , en attente DemandeConges : , , valide 4. (Optionnel) Implémenter la méthode poserconge() afin qu un Manager ou un Employe puisse insérer une demande de congés en base. Pour les opérations d insertion, suppression et mise à jour d un enregistrement en base, utiliser la méthode executeupdate de l objet Statement Statement st = null; st = cn.createstatement(); int nb = st.executeupdate(<requete SQL>) ; avec requête SQL : insert into conges (ID_employe, datedebut, datefin, etat) values (" + id + ", '" + demande.getdatedebut() + "', '" + demande.getdatefin() + "', '" + demande.getetatvalidation() + ');" Remarques : L implémentation de la méthode validerconge() du Manager se fera dans le TP sur les Collections Cette façon de coder n est pas une bonne pratique, car nous melons à des objets métiers des appels techniques vers une solution de persistance (Base de données mysql dans notre cas). Si nous souhaitons évoluer vers une base Oracle, il faudrait adapter le code partout ou cela est nécessaire. Une bonne façon de faire serait de créer une couche d abstraction intermédiaire permettant de dissocier la couche métier de la couche technique. Cela pourrait être fait par le biais d une Factory et de DAO (Data Access Object). 31/43

32 Enfin, nous constatons que chaque méthode procède à l ouverture d une connexion à la base de données et à sa fermeture, opérations coûteuses. Une bonne pratique dans ce cas serait de gérer des pools de connexions. 5. Tester la méthode poserconges() via le LanceurGestionConges sur les instances suivantes : Employe emp1 = new Employe("Watson", "John", 1); Manager manager = new Manager("Homes", "Sherlock", 2); DemandeConges cg1 = new DemandeConges(" ", " "); DemandeConges cg2 = new DemandeConges(" ", " "); emp1.poserconge(cg1); manager.poserconge(cg2); 6. Obtention des résultats suivants : 32/43

33 Objectif : TP 11 Collection Manipuler les collections (insertion, parcours). 1. implémentation du diagramme de classes UML suivant : Remarques : Rajout d un attribut listeemployes de type Collection dans la classe Manager et de ses accesseurs associés. Ajout de la méthode fonctionnelle ajouteremploye() dans la classe Manager. 2. Modifier la méthode consulterconges de la classe Employe afin de retourner une collection de DemandeConges Rappel : à ce stade du TP, la méthode se contente d afficher les congés et de retourner null. Collection col = new ArrayList();. //Ajou t de la demande dans la collection à retourner col.add(demande); 3. Tester la récupération de la Collection retournée par méthode consulterconges() via le LanceurGestionConges. 4. (Optionnel) Implémenter la méthode ajouteremploye (Employe e) de la classe Manager. Cette méthode ajoute l employé e passé en argument à la Collection listeemploye. public void ajouteremploye (Employe e) { listeemployes.add(e); 33/43

34 5. (Optionnel) Implémenter la méthode validerconge() de la classe Manager. Pour toutes les instances d employés présentes dans la Collection listeemployes, procéder à la mise à jour de l état des demandes de congés à «valide». "UPDATE conges SET etat='" + DemandeConges.ACCORDE + "' WHERE etat='" + DemandeConges.ATTENTE + "' and ID_employe=" + emp.getid()+ ";" 6. (Optionnel) Tester la méthode validerconge () via le LanceurGestionConges sur les instances suivantes : Employe emp1 = new Employe("Watson", "John", 1); Manager manager = new Manager("Homes", "Sherlock", 2); Penser à rattacher emp1 à manager : manager.ajouteremploye(emp1); 7. (Optionnel) Obtention des résultats suivants : Tous les congés de l ID_employe = 1 sont à valides. 34/43

35 TP 12 JUnit Le framework Junit permet d automatiser des séquences de tests afin de vérifier la non régression d une application. 1. Créer un package services.test 2. Ajouter le test JUnit a. Click droit sur le pakage test b. New > Junit Test Case c. Sélectionner les options comme indiqué ci-dessous. d. Sélectionner la méthode listercongepersonnel. 35/43

36 e. Génération de la classe de test suivante : package services.test; import junit.framework.testcase; public class TestServicePaie extends TestCase { public static void main(string[] args) { junit.textui.testrunner.run(testservicepaie.class); /* * Test method for 'domaine.servicepaie.listercongepersonnel(ipersonnel)' */ public void testlistercongepersonnel() { 3. Ecriture du test testlistercongepersonnel Reprendre en partie le contenu du main du LanceurGestionConges Exemple : ServicePaie paie = new ServicePaie(); Employe emp1 = new Empl oye("watson", "John", 1); paie.listercongepersonnel(emp1); Manager manager = new Manager("Homes", "Sherlock", 2); paie.listercongepersonnel(manager); Penser à appeler une méthode assertxxx, pour tester le retour escompté de la méthode. 4. Tester la classe JUnit TestServicePaie Click droit sur la classe > Run as > JUnit Test 5. Ecrire une nouvelle classe de test unitaire JUnit Tes Employe. t Sélectionner la méthode consulterconges. 36/43

37 6. Génération de la classe de test suivante. package com.services; import junit.framework.testcase; public class TestEmploye extends TestCase { public static void main(string[] args) { junit.swingui.testrunner.run(testemploye.class); /* * Tes t method for 'com.domaine.employe.consulterconges()' */ public void testconsulterconges() { 7. Ecriture du test testconsulterconges Exemple : Collection listeconges; Employe emp1 = new Employe("Watson", "John", 1); listeconges = emp1.consulterconges(); asserttrue(listeconges.size() > 0); Employe emp2 = new Employe("Duval", "Robert", 6); listeconges = emp2.consulterconges(); assertfalse(listeconges. size() > 0); Manager manager = new Manager("Homes", "Sherlock", 2); listeconges = manager. consulterconges(); asserttrue(listeconges.size() > 0); 8. Tester la classe JUnit TestEmploye 37/43

38 Objectif : TP 13 Internationalisation Externaliser au sein d un fichier de propriétés les paramètres de connexion à la base de données MySQL. 1. Créer le package domaine.properties 2. Créer le fichier de propriétés config.properties avec les données suivantes ########## Configuration accès SGBD ########## sgbd.driver=com.mysql.jdbc.driver sgbd.login=root sgbd.password= 3. Modifier la méthode consulterconges de la classe Employe afin de rechercher les éléments de connexion à la base de données dans le fichier config.properties Exemple : ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.config"); String driver = bundle.getstring("sgbd.driver"); String mysqluser = bundle.getstring("sgbd.login"); String mysqlpassword=bundle.getstring("sgbd.password"); 38/43

39 Objectif : TP 14 Entrée / Sortie Exporter la liste des congés vers un fichier texte. 1. implémentation du diagramme de classes UML suivant : Remarque : Rajout de la méthode exporterconges dans la classe ServicePaie. 2. Ecrire la méthode exporterconges dans la classe ServicePaie afin d exporter la liste des congés d un membre du personnel vers le fichier texte exportconges.txt Indications : Récupérer la liste des congés sous forme de Collection en invoquant la méthode consulterconges sur le paramètre de type IPersonnel (Cf. diagramme UML) Utiliser la classe File pour obtenir une représentation java d un fichier texte. Utiliser la classe FileWriter pour écrire dans ce fichier texte. 7. Tester la méthode exporterconges () via le LanceurGestionConges sur les instances suivantes : ServicePaie paie = new ServicePaie(); Employe emp1 = new Empl oye("watson", "John", 1); paie.exporterconges(emp1); 39/43

40 TP 15 Swing Objectif : Création d une IHM swing avec implémentation du modèle événementiel. Implémentation du diagramme de classes UML suivant : Création de la fenêtre principale 1. Créer un conteneur de type JFrame nommé ClickJFrame dans le package presentation.swing Ce conteneur supportera l affichage d un bouton (JBouton), d une case à cocher (JCheckbox) et d un label (JLabel) (Cf. copie d écran ci-dessus) 2. Ecrire un constructeur ClickJFrame se chargeant de la construction graphique comme indiqué précédemment. 3. Attacher aux objets graphiques générateur d événements (bouton et checkbox) un gestionnaire d événement nommé ClickListener de type ActionListener (Cf. point suivant) 40/43

41 Création du gestionnaire d événements 1. Ecrire la classe ClickListener implémentant l interface ActionListener. 2. Ce gestionnaire d événement va récupérer l origine de l événement (bouton/checbox) dans la méthode actionperformed et déclencher le traitement ad hoc : Si le bouton à été clické, modifier le label pour afficher le message : «click bouton» Si la checkbox à été clickée, modifier le label pour afficher le message : «click checkbox» 3. Prévoir également un constructeur de ClickListener conservant une référence vers les objets graphiques (bouton, checkbox et label). Création du lanceur de la fenêtre principale 1. Créer une classe LanceurSwing le package lanceur public static void main(string[] args) { //Création de la fenêtre de login ClickJFrame fenetrelogin = new ClickJFr ame(); fenetrelogin.setdefaultcloseoperation(jframe.exit_on_close); //Affichage de l'objet sur l'écran fenetrelogin.setvisible(true); Remarques : Le fait d instancier un ClickJFrame provoque automatiquement l affichage du conteneur swing associé. La méthode setdefaultcloseoperation(jframe.exit_on_close) permet de terminer l application lorsque l on clique sur l icone l IHM disparait mais le processus continue de tourner. de l IHM. Autrement 2. Tester le LanceurSwing. 41/43

42 TP 16 Log4J Objectif : Utilisation de l API Log4J. Installation de log4j 1. Ajouter les pilotes dans le projet a. Importer le composant log4j jar i. Click droit sur le dossier lib ii. Importer iii. File System 2. Ajouter la librairie log4j au classpath du projet b. Click droit sur le projet c. Propriétés d. Sélectionner la catégorie Java Build Path e. Onglet Librairies f. Add JARs 42/43

43 Implémentation de log4j 1. Récupérer le fichier log4j.xml fourni sur le CD (D:\distribution\Log4j) et le recopier à la racine du projet Ges ionconges. t Ce fichier est configuré pour tracer les messages sur la console. 2. Modifier la classe Employe et rajouter des log4j dans l ensemble des méthodes. Indications : Créer un logger statique au niveau de la classe Employe static Logger mylogger = Logger.getLogger(Employe.class); Charger, dans le constructeur de la classe Employe, la configuration Log4J paramétrée dans le fichier log4j.xml via un DOMConfigurator. 3. Tester la génération des log sur la ConsoleAppender via le LanceurGestionConges. 4. Modifier le fichier log4j.xml pour pouvoir tracer dans un HTMLAppender 5. Tester la génération des log sur le ConsoleAppender et la HTMLAppender via le LanceurGestionConges 43/43

TP1. Outils Java Eléments de correction

TP1. Outils Java Eléments de correction c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

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)

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) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Java DataBaseConnectivity

Java DataBaseConnectivity Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage

Plus en détail

Java Licence professionnelle CISII, 2009-2010

Java Licence professionnelle CISII, 2009-2010 Java Licence professionnelle CISII, 2009-2010 Cours 6 : le paquetage (package) Cours inspiré des cours de Richard Grin, Antoine Tabbone et Hazel Everett 1 Définition - Les classes Java sont regroupées

Plus en détail

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation

Plus en détail

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse IFT287 Exploitation de base de données relationnelles et orientées objet Laboratoire Mon premier programme Java en Eclipse Comment faire? Nous allons utiliser l environnement de travail proposé par Eclipse

Plus en détail

Environnements de développement (intégrés)

Environnements de développement (intégrés) Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

Eclipse atelier Java

Eclipse atelier Java Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer

Plus en détail

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7 Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application

Plus en détail

Tutoriel d installation de Hibernate avec Eclipse

Tutoriel d installation de Hibernate avec Eclipse Tutoriel d installation de Hibernate avec Eclipse Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création

Plus en détail

Cours 1: Java et les objets

Cours 1: Java et les objets Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/

Plus en détail

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

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2 Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD

Plus en détail

Création d une application JEE

Création d une application JEE Création d une application JEE Rédacteurs : Alexandre Baillif, Philippe Lacomme, Raksmey Phan et Michaël PLAN Date : juillet 2010 Mise à jour : Michaël PLAN Date : octobre 2014 Avertissement : - ce document

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

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

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Installation et compilation de gnurbs sous Windows

Installation et compilation de gnurbs sous Windows Installation et compilation de gnurbs sous Windows Installation de l environnement de développement Code::Blocks (Environnement de développement) 1. Télécharger l installateur de Code::Blocks (version

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

Chapitre VI- La validation de la composition.

Chapitre VI- La validation de la composition. Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions

Plus en détail

Création d un service web avec NetBeans 5.5 et SJAS 9

Création d un service web avec NetBeans 5.5 et SJAS 9 Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...

Plus en détail

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code Généralités javadoc Université de Nice - Sophia Antipolis Richard Grin Version 1.4.1 8/2/11 javadoc produit de la documentation en partant de commentaires particuliers insérés dans le code source des classes

Plus en détail

Serveur d'archivage 2007 Installation et utilisation de la BD exist

Serveur d'archivage 2007 Installation et utilisation de la BD exist Type du document Procédure d'installation Auteur(s) Eric Bouladier Date de création 26/02/20007 Domaine de diffusion tous Validé par Equipe Versions Date Auteur(s) Modifications V1.00 26/02/2007 Eric Bouladier

Plus en détail

Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC

Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC Connexion à SQL Server 2005 à partir du serveur d application SJSAS 9 Utilisation d une interface JDBC Sommaire 1. Objectifs et intérêts... 2 2. Intégrer le driver SQL Server dans SJSAS 9... 2 2.1. Télécharger

Plus en détail

TD/TP 1 Introduction au SDK d Android

TD/TP 1 Introduction au SDK d Android TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1 TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER Sur Windows Contenu TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1 I-Installation d «Oracle Database Express Edition»...2 Etape 1 :

Plus en détail

Construire des plug-ins pour SAS Management Console SAS 9.1

Construire des plug-ins pour SAS Management Console SAS 9.1 Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION

Plus en détail

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1 Plan 1. Généralités sur la persistance des données dans les applications 2. La connection

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)

Plus en détail

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90. Analyste et développeur pendant plus de 10 ans, Thierry GROUSSARD s est ensuite orienté vers la formation et plus particulièrement dans le domaine du développement. Sa connaissance approfondie des besoins

Plus en détail

Modélisation et Gestion des bases de données avec mysql workbench

Modélisation et Gestion des bases de données avec mysql workbench Modélisation et Gestion des bases de données avec mysql workbench par novembre 2011 Table des matières 1 Installation 3 1.1 Ecran de chargement 3 1.2 Page d accueil 3 2 Réalisation d une base de données

Plus en détail

APIs de table pour SQL Server

APIs de table pour SQL Server 2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et de fin du

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

TP Programmation Java / JDBC / Oracle

TP Programmation Java / JDBC / Oracle TP Programmation Java / JDBC / Oracle 1. Connectivité avec une base de données Oracle au travers de l interface JDBC L interface de programmation (API) JDBC (Java DataBase Connectivity) est une librairie

Plus en détail

TP2 : Client d une BDD SqlServer

TP2 : Client d une BDD SqlServer TP2 : Client d une BDD SqlServer Objectifs : utiliser la barre de menu, utiliser les préférences d application (settings) ou (options), gérer la persistance des données, utiliser la bibliothèque jtds:jdbc

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez... Au programme Conception Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille 1 Présentation L UE COO est le prolongement immédiat de l UE POO du S4 informatique. cf. http://portail.fil.univ-lille1.fr/portail/ls4/poo

Plus en détail

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

BIRT (Business Intelligence and Reporting Tools)

BIRT (Business Intelligence and Reporting Tools) BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

Plus en détail

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

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres

Plus en détail

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés) Introduction à la POO 1. Histoire de la POO 9 2. Historique du 12 La conception orientée objet 1. Approche procédurale et décomposition fonctionnelle 13 2. La transition vers l'approche objet 14 3. Les

Plus en détail

Interfaces graphiques avec l API Swing

Interfaces graphiques avec l API Swing Interfaces graphiques avec l API Swing Les Swing Les classes graphiques Swing dérivent de la classe JComponent, qui hérite ellemême de la classe AWT (Abstract Window Toolkit). Tous les composants Swing

Plus en détail

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige. : JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL

Plus en détail

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO _TUTO_module_magento Table des matières -1) - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) MAGENTO :...4-1.3.1.1) Les Web Services :...4-1.3.1.2)

Plus en détail

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public. DEVAKI NEXTOBJET 1 Présentation...2 Installation...3 Prérequis...3 Windows...3 Linux...3 Exécution...4 Concevoir une BDD avec Devaki NextObject...5 Nouveau MCD...5 Configurer la connexion à la base de

Plus en détail

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

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe

Plus en détail

Quick Start Installation de MDweb version 2.3

Quick Start Installation de MDweb version 2.3 Quick Start Installation de MDweb version 2.3 Date : 2011.08.26 1. Quickstart Quick Start - Installation de MDweb version 2011 Installation Téléchargement et Installation des logiciels requis Déploiement

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8 Sage 100 CRM Guide de l Import Plus avec Talend Version 8 Mise à jour : 2015 version 8 Composition du progiciel Votre progiciel est composé d un boîtier de rangement comprenant : le cédérom sur lequel

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

Programmation par les Objets en Java

Programmation par les Objets en Java Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée

Plus en détail

K?ellaWeb Saisie des absences, retards et sanctions APLON en mode Web

K?ellaWeb Saisie des absences, retards et sanctions APLON en mode Web 2012 K?ellaWeb Saisie des absences, retards et sanctions APLON en mode Web Document d installation et de paramétrage 24/09/2012 Sommaire Septembre 2012 1. Contexte d installation...3 1.1. Prérequis à l

Plus en détail

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

Tutoriel BlueJ. Michael Kölling Mærsk Institute University of Southern Denmark. Version 1.4 fr-2 par le groupe Sigma 1 pour BlueJ Version 1.2.

Tutoriel BlueJ. Michael Kölling Mærsk Institute University of Southern Denmark. Version 1.4 fr-2 par le groupe Sigma 1 pour BlueJ Version 1.2. Tutoriel BlueJ Michael Kölling Mærsk Institute University of Southern Denmark Version 1.4 fr-2 par le groupe Sigma 1 pour BlueJ Version 1.2.x Table des matières 1 Avant-propos 3 1.1 BlueJ......................................

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

Utiliser Java sans BlueJ

Utiliser Java sans BlueJ Conception objet en Java avec BlueJ une approche interactive Utiliser Java sans BlueJ Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Conception objet en Java avec BlueJ une approche

Plus en détail

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

Introduction à JDBC. Accès aux bases de données en Java Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity

Plus en détail

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend

Plus en détail

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

Polymorphisme, la classe Object, les package et la visibilité en Java... 1 Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

TP, première séquence d exercices.

TP, première séquence d exercices. TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la

Plus en détail

Traitement de données

Traitement de données Traitement de données Présentation du module TINI Présentation du module : Le module Tini se décline en plusieurs versions, il est constitué d une carte d application et d un module processeur : Les modules

Plus en détail

Approche Contract First

Approche Contract First Exemple HelpDesk Approche Contract First Développement d un premier web service en utilisant l approche contract first (ou WSDL First) Écriture du wsdl avant d écrire le code java Autre possibilité implementation

Plus en détail

Votre premier projet Android

Votre premier projet Android 3 Votre premier projet Android Maintenant que le SDK Android est installé, il est temps de créer votre premier projet. La bonne nouvelle est qu il n exige aucune ligne de code les outils Android créent

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Projet De Stijl Plate-forme pour robots mobiles

Projet De Stijl Plate-forme pour robots mobiles Projet De Stijl Plate-forme pour robots mobiles Guide de prise en main de Xenomai et des cibles Version : 22 janvier 2013 S. Di Mercurio, P.-E. Hladik Table des matières 1 Glossaire.........................................

Plus en détail

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12 GTK+ GLADE Page 1 sur 12 SOMMAIRE INTRO 3 Présentation de GTK+ 3 Présentation de GLADE 3 GTK+ 4 Installation 4 Les Widgets 4 Le système de hiérarchie 5 Les signaux 6 GLADE 7 Installation 7 L interface

Plus en détail

Annexe 10 - Procédure pour créer un Jar

Annexe 10 - Procédure pour créer un Jar Annexe 10 - Procédure pour créer un Jar permet d'encapsuler une application dans un seul fichier JAR ( Java Archive File ). Le Jar étant exécutable, on peut donc démarrer l'application sans l'aide de JDeveloper.

Plus en détail

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

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections

Plus en détail

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

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

INITIATION AU LANGAGE JAVA

INITIATION AU LANGAGE JAVA INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal

Plus en détail

< Atelier 1 /> Démarrer une application web

< Atelier 1 /> Démarrer une application web MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES Antonin AILLET Remi DEVES Thibaut AZZOPARDI 2 ème année de DUT Informatique Cahier Technique «Développer une application intranet pour la gestion des stages des étudiants» Encadré par Didier BOULLE Année

Plus en détail

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits 1 Installer et configurer Oracle Forms 11gR2 (Windows x64) Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits Document préparé par Abderrahmane Abed Juin 2013 Version 1.0 Courriel: aabed@oraweb.ca

Plus en détail

Apprendre Java et C++ avec NetBeans

Apprendre Java et C++ avec NetBeans E Apprendre Java et C++ avec NetBeans Généralités Est-ce le titre d un nouvel ouvrage? Pourquoi pas! NetBeans fait son apparition dans cette édition car un module, permettant d éditer et de compiler du

Plus en détail

Logiciel : GLPI Version : 0.72.4 SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003.

Logiciel : GLPI Version : 0.72.4 SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003. Ce document est libre de droit, merci simplement de respecter son auteur. Toutes remarques ou commentaires seront les bienvenues. ATTENTION : La mise à jour par script entre GLPI et Active Directory ne

Plus en détail

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO) LDAP Mise en place Introduction Limitation et Sécurité Déclarer un serveur MySQL dans l annuaire LDAP Associer un utilisateur DiaClientSQL à son compte Windows (SSO) Créer les collaborateurs DiaClientSQL

Plus en détail

Les frameworks au coeur des applications web

Les frameworks au coeur des applications web Les frameworks au coeur des applications web Mémoire de bachelor réalisé par : Arielle Moro Directeur de mémoire : Peter Daehne, Professeur HES Genève, le vendredi 27 août 2010, Haute Ecole de Gestion

Plus en détail

EJBCA PKI Open Source

EJBCA PKI Open Source PKI Open Source http://www.auditiel.fr/docs/installation.pdf 1 SOMMAIRE 1Sommaire... 2 2Introduction... 3 2.1Pré requis...3 2.2Versions... 3 2.3Glossaire...3 3Installation...4 3.1Composants nécessaires...

Plus en détail

Générer du code à partir d une description de haut niveau

Générer du code à partir d une description de haut niveau Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,

Plus en détail

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 I. Objectifs Mettre en œuvre les compétences acquises ou en cours d acquisition en: o Modélisation UML, Réseau, Base de données,

Plus en détail