«Anatomie» d une application web Servlets - JDBC
|
|
- Antoinette Bourgeois
- il y a 8 ans
- Total affichages :
Transcription
1 «Anatomie» d une application web Servlets - JDBC Patrick REIGNIER - Philippe GENOUDUJF Février L application histogramme de notes HistoServlet HistoServlet HistogramModel HistogramModel (objet (objet métier) métier) Serveur SGBD Driver JDBC Patrick REIGNIER - Philippe GENOUDUJF Février
2 Controleur * Réponse à une requête de type <CODE>get</CODE> request données associées à la requête HTTP response données associées à la réponse **/ public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException { // Analyse de la requête HTTP // Récupération des données // Génération de la présentation Patrick REIGNIER - Philippe GENOUDUJF Février Controleur : analyse de la requête * Réponse à une requête de type <CODE>get</CODE> request données associées à la requête HTTP response données associées à la réponse **/ public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException { // Analyse de la requête HTTP // Construction du modèle // Génération de la présentation int annee = 0 ; String matiere = null ; String presentation = null ; Attention de ne pas l oublier! annee = Integer.parseInt(request.getParameter("annee")) ; matiere = request.getparameter("matiere") ; presentation = request.getparameter("presentation") ; catch(numberformatexception e) { // ce cas ne devrait jamais arriver. Le test si // l'année est un nombre devrait être confié à javascript // côté client avec blocage de l'envoie du formulaire // si saisie incorrecte response.senderror(httpservletresponse.sc_internal_server_error, "L'année demandée n'est pas un nombre") ; return ; Patrick REIGNIER - Philippe GENOUDUJF Février
3 Controleur : construction du modèle * Réponse à une requête de type <CODE>get</CODE> request données associées à la requête HTTP response données associées à la réponse **/ public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException { // Analyse de la requête HTTP // Construction du modèle // Génération de la présentation HistogramModel notes = new HistogramModel(annee,matiere) ; notes.extrairenotes() ; catch (SQLException e) { response.senderror(httpservletresponse.sc_internal_server_error, e.getmessage()) ; return; Patrick REIGNIER - Philippe GENOUDUJF Février Controleur : génération du résultat * Réponse à une requête de type <CODE>get</CODE> request données associées à la requête HTTP response données associées à la réponse **/ public void doget(httpservletrequest request, HttpServletResponse response) throws IOException, ServletException { // Analyse de la requête HTTP // Construction du modèle // Génération de la présentation if (presentation.equals("tableau")) { // on génère la représentation de type tableau HTML response.setcontenttype("text/html"); out = response.getwriter(); out.println("<html><head><title>"); out.println("histogramme de notes"); out.println("</title></head><body>"); //Display Data out.println("<h1>bonus Calculation</H1>"); out.println("<p>soc Sec: " + socsec + "<P>"); out.println("<p>multiplier: " + multiplier + "<P>"); out.println("<p>bonus Amount: " + calc + "<P>"); out.println("</body></html>"); out.close(); else { // on génère la représentation de type image GIF Patrick REIGNIER - Philippe GENOUDUJF Février
4 Modèle : construction Calcul de l histogramme des notes à partir de la BD => Requête SQL + analyse du résultat public HistogramModel(String matierere, int annee) throws SQLException { stmt = conn.createstatement() ; result = stmt.executequery("select note, count(*) from " + matiere + " where annee = " + annee + " group by note") ; // parcours du résultat de la requete et pour chaque note // on repporte son nombre d'occurences dans le tableau freq while (result.next()) { note = new Integer(result.getString(1)).intValue() ; freq[note] = new Integer(result.getString(2)).intValue() ; rs.close(); stmt.close(); Problème : - Quand se connecter? - Quand se déconnecter? Patrick REIGNIER - Philippe GENOUDUJF Février connexion à la BD 1ère solution : au niveau du modèle public HistogramModel(String matierere, int annee) throws SQLException { Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3036/notes",, ); stmt = conn.createstatement() ; result = stmt.executequery("select note, count(*) from " + matiere + " where annee = " + annee + " group by note") ; // parcours du résultat de la requete et pour chaque note // on repporte son nombre d'occurences dans le tableau freq while (result.next()) { note = new Integer(result.getString(1)).intValue() ; freq[note] = new Integer(result.getString(2)).intValue() ; stmt.close(); conn.close(); Connexion / déconnexion à chaque requête Opération coûteuse Approche peu efficace Paramètres de la BD en «dur» dans le modèle Patrick REIGNIER - Philippe GENOUDUJF Février
5 connexion à la BD 2ème solution : au niveau du contrôleur public class HistoServlet extends HttpServlet { public void doget() { public void destroy() { conn.close(); catch (SQLException e) { Écriture message fichier log protected Connexion conn; public void init() throws ServletException { Class.forName("com.mysql.jdvc.Driver").newInstance(); conn = DriverManager.getConnection("jdbc:mysql://localhost:3036/notes",, ); catch (Exception e) { throw new ServletException("problème lors du chargement du driver", e); Patrick REIGNIER - Philippe GENOUDUJF Février connexion à la BD 2ème solution : au niveau du contrôleur Piège : Servlets multithreadés : la même instance sert toutes les requêtes objet connexion partagé par toutes les requêtes => la base de données ne voit qu une transaction plutôt qu une transaction par thread de requêtes risque d incohérence si entrelacement des requêtes Patrick REIGNIER - Philippe GENOUDUJF Février
6 Rappel : Cycle de vie des Servlets Moteur de servlets Créer un pool de threabd Thread Thread Thread Instancier la servlet Servlet Appbeler init() initialisation Requête HTTP 1 Affecter une requête à un thread Appeler service() Requête HTTP 2 Affecter une requête à un thread Appeler service() Exécuter le service Réponse HTTP 1 Exécuter le service Réponse HTTP 2 Terminer le pool de threads Appeler destroy() Patrick REIGNIER - Philippe GENOUDUJF Février Connexion à la BD 2ème solution bis : au niveau du contrôleur éviter le multithreading public class HistoServlet extends HttpServlet implements SingleThreadModel { protected Connexion conn; Une instance de servlet par requête public void init() throws ServletException { Class.forName("com.mysql.jdvc.Driver").newInstance(); conn = DriverManager.getConnection("jdbc:mysql://localhost:3036/notes",, ); catch (Exception e) { throw new ServletException("problème lors du chargement du driver", e); Grand nombre de connexions vers la base Risque de dégradation des performances Risque de rejet par la base Mauvais passage à l échelle Connexions inactives Risque de timeout au niveau de la base la servlet correspondante ne fonctionne plus Patrick REIGNIER - Philippe GENOUDUJF Février
7 connexion à la BD Utilisation d une liste de connexions disponibles Lors de l accès à la base de données : Demande d une connexion disponible à la liste Accès à la BD à travers cette connexion Restitution de la connexion à la liste Au niveau de la liste : Création de nouvelles connexions si nécessaire Fermeture des connexions inactives depuis trop longtemps Connection pool = spécification J2EE (javax.sql) Patrick REIGNIER - Philippe GENOUDUJF Février connexion à la BD javax.sql.datasource = liste de connexions Ressource partagée par toutes les sessions (Objet global) Mise à disposition par un serveur d objets : JNDI (Java Naming Directory Interface) Désignation de la ressource dans le fichier de déploiement (web.xml) <servlet-mapping> </servlet-mapping> <resource-ref> <res-ref-name>jdbc/notes</res-ref-name> <res-type>javax.sql.datasource</res-type> <res-auth>container</res-auth> </resource-ref> Patrick REIGNIER - Philippe GENOUDUJF Février
8 connexion à la BD Définition de la ressource dans le fichier de configuration du serveur (conf/server.xml) <Context docbase="notes" path="/notes" reloadable="true"> <Logger classname="org.apache.catalina.logger.filelogger" prefix="localhost_notes_log." suffix=".txt" timestamp="true"/> <Resource name="jdbc/notes" auth="container" type="javax.sql.datasource"/> <ResourceParams name="jdbc/myoracle"> <parameter> <name>driverclassname</name> <value>oracle.jdbc.driver.oracledriver</value> </parameter> <parameter> <name>url</name> </parameter> <parameter> <name>username</name> <value>genoud</value> </parameter> <parameter> <name>password</name> <value>bd2003</value> </parameter> </ResourceParams> </ResourceParams> </Context> Voir la documentation dans $CATALINA_HOME/webapps/tomcat-docs/jndi-datasource-examples-howto.html Patrick REIGNIER - Philippe GENOUDUJF Février connexion à la BD Utilisation de la source de données dans le code java public class Controleur extends HttpServlet { * la source de données qui permettra d'accéder à la base de donnée * (c'est elle qui gère un pool de connexions, et qui fournira les * connexions aux différents objets en ayant l'usage). */ private DataSource datasource; Création de la source de données dans le servlet contrôleur * A l'initialisation du servlet, création d'un pool de connexions * qui servira à fournir des connexions à la base de données * utilisés par les composants modèle. */ public void init() throws ServletException { Context init = new InitialContext(); Context ctx = (Context) init.lookup("java:comp/env"); datasource = (DataSource) ctx.lookup("jdbc/notes"); catch (NamingException ne) { throw new ServletException("problème lors du chargement du driver ", ne); Patrick REIGNIER - Philippe GENOUDUJF Février
9 connexion à la BD Utilisation de la source de données dans le code java Dans le modèle public HistogramModel(String matierere, int annee ),DataSource ds) throws SQLException // obtention d une connexion Connexion Connection conn conn = ds.getconnection(); = // depuis la source de données DriverManager.getConnection("jdbc:mysql://localhost:3036/notes" (le pool de connexions),, ); stmt = conn.createstatement() ; result = stmt.executequery("select note, count(*) from " + matiere + " where annee = " + annee + " group by note") ; // parcours du résultat de la requete et pour chaque note // on repporte son nombre d'occurences dans le tableau freq while (result.next()) { note = new Integer(result.getString(1)).intValue() ; freq[note] = new Integer(result.getString(2)).intValue() ; stmt.close(); conn.close(); // libère la connexion (elle est remise dans le pool) Patrick REIGNIER - Philippe GENOUDUJF Février connexion à la BD Très peu de changement dans le code Plus de référence explicite dans le code Au driver jdbc A l url d accès à la base Au nom de l utilisateur A son mot de passe Possibilité de changer de base lors du déploiement sans avoir besoin de recompiler l application Patrick REIGNIER - Philippe GENOUDUJF Février
10 Structure de déploiement des applications web Répertoire d installation des applications web A chaque application web correspond un répertoire dont le contenu respecte une structuration normalisée à partir de la spécification 2.2 des servlets Classes java (et ressources associées) nécessaires à l application Si organisation en packages cela doit être traduit dans la hiérarchie des sous répertoires de classes Les.jar des bibliothèques non standard de classes utilisées par l application (Attention!! pas de.zip) Descripteur de déploiement de l application Pages et tous les fichiers accessibles par client du serveur web ( *.html, *.jsp, *.css, images, etc) Patrick REIGNIER - Philippe GENOUDUJF Février Fichiers.jar visibles pour toutes les applications web + code interne de Tomcat JDBC 2.0 Optional Package APIs, définit entre autres javax.sql.datasource. JavaMail 1.2 APIs, afin d écrire des applications «mail-enabled». Servlet 2.3 et JSP 1.2 APIs indispensables pour l écriture de servlets et pages JSP. Fichiers.jar visibles pour toutes les applications web Patrick REIGNIER - Philippe GENOUDUJF Février
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étailWeb Tier : déploiement de servlets
Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation
Plus en détailApplication 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étailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailInstitut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki
Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants
Plus en détailAvant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4
Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.
Plus en détailLa 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étailJava 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étail1. Installation d'un serveur d'application JBoss:
EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download
Plus en détailTP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.
ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture
Plus en détailJava Naming and Directory Interface
Introduction Java Naming and Directory Interface Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique M2 Spécialité SAR Java Naming and Directory Interface (JNDI) Java Standard
Plus en détailLe développement d applications Web
Le développement d applications Web Plan Principes des applications Web Origine et utilité des Servlets Présentation des Servlets Les JSP La Standard TAG Library Servlet, JSP et accès aux SGBD Les technologies
Plus en détailGroupe Eyrolles, 2005, ISBN : 2-212-11406-0
Groupe Eyrolles, 2005, ISBN : 2-212-11406-0 10 L atelier MyEclipse Eclipse facilite considérablement le développement Java en équipe. Son puissant éditeur, associé à des fonctionnalités de complétion de
Plus en détailApplication BdD et JDBC. Introduction 1/28. I Dans tout les cas, une seule problématique. I Quelques alternatives :
ntroduction 1/28 2/28 Anne-Cécile Caron Licence MAGE - Bases de Données 2013-2014 Application base de données Pour le développeur : Quel est l environnement? type de client (mode client serveur, intranet,...)
Plus en détailAccès aux bases de données
13 Accès aux bases de données Les bases de données fournissent un mécanisme de stockage persistant pour les données d application et dans bien des cas, elles sont essentielles au fonctionnement des applications.
Plus en détailJava 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étailCompte 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étailEtude de l ENT de l Université de Paris 5. Mise en place d outils de suivi de la charge de l ENT (monitoring)
Etude de l ENT de l Université de Paris 5 Mise en place d outils de suivi de la charge de l ENT (monitoring) Objet Mise en place d outils de suivi de la charge de l ENT (monitoring) Référence ESUP-ETU-P5-D
Plus en détailTP 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étailA DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT
DOCUMENTATION CAS A DESTINATION DES SERVICES TIERS Titre descriptif du document Référence du document REFO-DT-ENTV2-ServeurCAS-v1.2.docx Nom du fichier REFO-DT-ENTV2-ServeurCAS-v1.2.docx Version du document
Plus en détailIntroduction à 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étailProgrammation d application Bases de données avec Java
Plan du document Programmation d application Bases de données avec Java INT Problématique slide 3 Correspondance diagramme de classe slide 4 UML vers schéma relationnel Programmation BD avec JDBC slide
Plus en détailDocumentation CAS à destination des éditeurs
Documentation CAS à destination des éditeurs Sommaire Préambule... 1 Présentation de CAS...2 Intérêt... 2 Fonctionnement de base...2 Synoptique des échanges (1ère connexion)... 2 Synoptique des échanges
Plus en détailJavaServer Pages (JSP)
JavaServer Pages (JSP) XVIII-1 Prérequis pour ce cours Ce cours a trait à la programmation Java coté serveur Il faut connaître un minimum de technologie J2EE Il faut connaître les servlets XVIII-2 Motivation
Plus en détailQuelques 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étailJava et les bases de données
Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples
Plus en détailExtension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.
Note technique W4 Engine Extension SSO Java Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java. 1 Présentation 3 2 Custom SSO Java 4 3 Bilan 10 Sommaire Référence
Plus en détailTP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet
TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailArchitecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués
Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr
Plus en détailCré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étailAspects techniques : guide d interfaçage SSO
COURDECO Aspects techniques : guide d interfaçage SSO Septembre 2011 Cette annexe présente succinctement le système d'authentification unique (SSO : single sign on, authentification unique) utilisé dans
Plus en détailServeur 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étailJava - MySQL. Code: java-mysql
Java - MySQL java-mysql Java - MySQL Code: java-mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/java-mysql/java-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/java-mysql.pdf Auteurs
Plus en détailLes architectures 3-tiers Partie I : les applications WEB
Les architectures 3-tiers Partie I : les applications WEB 1 Evolutions logicielles Des objets aux composants... Objets JavaBeans, Objets ActiveX, Objets COM,... 1 Evolutions logicielles Des objets aux
Plus en détailBest Practices : Utilisation des APIs de Lotus Web Content Management
Best Practices : Utilisation des APIs de Lotus Web Content Management Agenda Scénarios IBM Lotus Web Content Management Java Server Page (JSP) Introduction Balises JSP Composants JSP Exemples JSP Page
Plus en détailPour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant.
Chapitre 7 Le mode de communication en connexion est, a priori, supporté par le protocole TCP. Ce protocole fournit une communication fiable; les données sont transmises comme chaînes d octets. Avant de
Plus en détailHTTP 1.1. HyperText Transfer Protocol ... ... TCP IP ...
HTTP 1.1 Place de http dans le modèle osi : HyperText Transfer Protocol...... TCP IP...... HTTP est un protocole «sans état» : chaque page WEB est transmise dans une connexion séparée (sauf pour les connections
Plus en détailUtilisation de Jakarta Tomcat
ISI 1022 : Déploiement d applications Web Jean-Noël Sorenti. Année 2002/2003 Déploiement d application Web Utilisation de Jakarta Tomcat ISI 1022 : 1 ISI 1022 : Déploiement d applications Web Une application
Plus en détailTolérance aux Fautes des Grappes d Applications J2EE. Applications Internet dynamiques
Application statique Tolérance aux Fautes des Grappes d Applications J2EE Sara Bouchenak Sacha Krakowiak, Noël de Palma, Stéphane Fontaine Projet SARDES INRIA IMAG CFSE'4, 6-8 avril 2005 Tolérance aux
Plus en détailDis papa, c est quoi un bus logiciel réparti?
Dis papa, c est quoi un bus logiciel réparti? Raphael.Marvie@lifl.fr LIFL IRCICA Equipe GOAL Octobre 2006 10. Des sockets aux bus logiciels répartis 1 0. Une application répartie 2 Objectif Découvrir la
Plus en détailProgrammation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
Plus en détailServeur 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étailDéveloppement des Systèmes d Information
Développement des Systèmes d Information Axe ISI Camille Persson Institut Fayol / LSTI / ISCOD École Nationale Supérieure des Mines de Saint-Etienne 158 cours Fauriel, 42000 Saint-Etienne persson@emse.fr
Plus en détailProgrammer 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étailINTRODUCTION 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étailTP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose.
Université Paris 7 M2 II Protocole Internet TP3 Mail Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose. 1 Protocole SMTP 1. Le protocole SMTP est définit dans
Plus en détailImplementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy)
Implementing a simple RMI Application over the Internet (using and comparing HTTP tunneling, RMI Proxy) Abstract Un problème se pose lorsque l on veut effectuer des appels RMI à travers un firewall, car
Plus en détailPentaho. présentation
Pentaho présentation Présentation Une solution BI Développé en java Lien de téléchargement: http://freefr.dl.sourceforge.net/project/pentaho/business%2 0Intelligence%20Server/4.8.0-stable/biserver-ce-4.8.0-
Plus en détailCedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/
Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Webographie The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Les slides de cette présentation
Plus en détailTraitement des données de formulaires. Accès aux BD avec JDBC Servlets - M. Baron - Page
Organisation du cours sur les Servlets Servlets et API Traitement des données de formulaires Architecture de développement Cycle de vie Suivi de session Collaboration de Servlets Sécurité : authentification
Plus en détailLangage 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étailDéveloppement Logiciel
Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles
Plus en détailConstruire une base de donnée pour bibliothèque
Construire une base de donnée pour bibliothèque S'il y a bien un emploi typique pour un ordinateur, c'est celui de gérer une base de données. La première d'entre elles est bien sûr la base des fichiers
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailSIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault
SIO-65291 Page 1 de 5 1- Objectifs généraux Applications Web dynamiques Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault acquérir les principes et concepts fondamentaux dans le domaine d'applications
Plus en détailJOnAS 5. Serveur d application d
JOnAS 5 Serveur d application d dynamique Agenda En quelques mots Caractéristiques essentielles Zoom sur le versioning 2 Bull, 2008 Serveur d application dynamique JOnAS - Serveur d application Open Source
Plus en détailMise en œuvre des serveurs d application
Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés
Plus en détailJ2EE - Introduction. Développement web - Java. Plan du chapitre
Développement web - Java J2EE - Introduction Franck Denoël Master 2 ICA, UPMF Année académique 2007-2008 Franck Denoël Master 2 ICA, UPMF Année académique 2007-2008 Plan du chapitre J2EE Présentation J2EE
Plus en détailTable des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détail10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]
10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une
Plus en détailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailRMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.
RMI Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. Méthode proche de RPC. Outils et classes qui rendent l'implantation d'appels de méthodes d'objets distants aussi simples
Plus en détailProjet. But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables. Serveur de diffusion
Projet But: consultation en temps réel d événements (cours de bourse, trafic d envoi SMS ) sur des téléphones portables événements Serveur de diffusion 1 JMS Java Message Service PHAN Quang-Hai ISTR 04/05/2004
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailRemote 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étailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailFormation 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étailDéfinition des Webservices Ordre de paiement par email. Version 1.0
Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document
Plus en détailRAPPORT DE STAGE GWT PRISE EN MAIN SERVLET - TEST DES DAO TELOSYS PLUGIN ECLIPSE WIZARD DATASET TELOSYS
RAPPORT DE STAGE GWT PRISE EN MAIN SERVLET - TEST DES DAO TELOSYS PLUGIN ECLIPSE WIZARD DATASET TELOSYS SOMMAIRE 1 Introduction...4 2 Généralités à propos du stage...4 2.1 Sujet initial du stage Objectifs...4
Plus en détailExploitation de bases de données relationnelles et orientées objet IFT287
Université de Sherbrooke Département d informatique Exploitation de bases de données relationnelles et orientées objet IFT287 Notes complémentaires et synthétiques Marc Frappier, Ph.D. professeur Avertissement
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailJava RMI. Arnaud Labourel Courriel: arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 8 mars 2011
Java RMI Arnaud Labourel Courriel: arnaud.labourel@lif.univ-mrs.fr Université de Provence 8 mars 2011 Arnaud Labourel (Université de Provence) Java RMI 8 mars 2011 1 / 58 Web services Services par le réseau
Plus en détailMéta-annuaire LDAP-NIS-Active Directory
Auteur : Michel LASTES Co-auteur Bernard MÉRIENNE Date: 15 octobre 03 Méta-annuaire LDAP-NIS-Active Directory LIMSI (Laboratoire d Informatique pour la Mécanique et les Sciences de l Ingénieur) Bât 508
Plus en détailAnnuaire Interne des Personnels v 1.0 Manuel Administration
DSI/SPSI Niveau de Distribution Limité 2 Interne 3 Externe X 4 des Personnels v 1.0 Manuel Administration (v1.2) Rédaction Compléments / Vérification Approbation Nom : Olivier CHATOR Nom : Nom : Nom :
Plus en détailWEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13
WEBSERVICES Michael Fortier Master Informatique 2ème année fortier@lipn.univ-paris13.fr A308, Université de Paris 13 https ://lipn.univ-paris13.fr/ fortier/enseignement/webservices/ Sommaire 1 Rappels
Plus en détailJDBC le langage Java XVI-1 JMF
JDBC Java Database Connectivity XVI-1 JDBC JDBC est une API Java (ensemble de classes et d'interfaces défini par SUN et les acteurs du domaine des BD) permettant d'accéder aux bases de données à l'aide
Plus en détailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailArchitectures client/serveur
Architectures client/serveur Master Technologies de l'internet 1 ère année Eric Cariou Université de Pau et des Pays de l'adour UFR Sciences Pau Département Informatique Eric.Cariou@univ-pau.fr 1 Tryptique
Plus en détailApplication Web et J2EE
Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis
Plus en détailE-mail : contact@nqicorp.com - Web : http://www.nqicorp.com
- 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................
Plus en détailAuthentification et contrôle d'accès dans les applications web
Authentification et contrôle d'accès dans les applications web Quelques Rappels Objectifs : contrôler que seulement Certains utilisateurs Exécutent certaines opérations Sur certains objets Trois entités
Plus en détailJOnAS Day 5.1. Clustering
JOnAS Day 5.1 Clustering Solution complète de clustering Répartition de charge & bascule sur échec Application Web avec mod_jk/mod_proxy Connecteur http pour md_proxy Application Ejb avec CMIv2 Réplication
Plus en détail24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.
Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime
Plus en détailT4E.fr présente SSRPM, son offre de reset de mot de passe en self service
T4E.fr présente SSRPM, son offre de reset de mot de passe en self service Descriptif 1. L interface graphique 2. L application SSRPM 3. Les avantages 4. Prestation 5. Les autres solutions Concernant Tools4ever
Plus en détailCatalogue des Formations Techniques
Catalogue des Formations Techniques Items Média Concept 4, allées Pierre-Gilles de Gennes - 33700 Mérignac Téléphone : 05.57.35.73.73 Télécopie : 05.57.35.73.70 Courriel : contact@imc-fr.com 2 Préambule
Plus en détailCOMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA
COMPRENDRE LES DIFFERENTS TYPES DE CONNEXION LORS DE LA DEFINITION D UNE BIBLIOTHEQUE D ACCES A UNE BASE DE DONNEES Cet article s adresse aux administrateurs SAS en charge de la mise à disposition des
Plus en détail2009/2010 LICENCE PRO-SIL : PROJET TUTORE
2009/2010 LICENCE PRO-SIL : PROJET TUTORE Groupe : Yahsine,Resnay, Kojo, Amadou, Alain Tuteur : Moez Essaidi SOMMAIRE I) CAHIER DES CHARGES...2 L objectif du projet :... 2 Environnement du projet :...
Plus en détailPrendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;
s Introduction Naissance d'un programme Exercice I-1 : Apprendre à décomposer une tâche en sous-tâches distinctes a. Objets nécessaires : 1 tableau, 1 clou, 2 pointes, 1 ficelle, 1 marteau, 1 crayon, 1
Plus en détailFormation en Logiciels Libres. Fiche d inscription
République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)
Plus en détailProgramme ASI Développeur
Programme ASI Développeur Titre de niveau II inscrit au RNCP Objectifs : Savoir utiliser un langage dynamique dans la création et la gestion d un site web. Apprendre à développer des programmes en objet.
Plus en détailMySQL avec Mac OS X. Quelques manipulations avec le terminal sont nécessaires si une version de MySQL est déjà lancée:
MySQL avec Mac OS X MySQL est un moteur de bases de données relationnelles (SGBDR système de gestion de bases de données relationnelles) basé sur le langage SQL. Il s'agit d'un langage normalisé de requêtes
Plus en détailGrenoble INP Genie Industriel G-SCOP Université Joseph Fourier CNRS. Stages d excellence L2 Mathématiques Informatiques
Grenoble INP Genie Industriel G-SCOP Université Joseph Fourier CNRS Stages d excellence L2 Mathématiques Informatiques Contribution à la réalisation d une plateforme WEB pour l optimisation en conception
Plus en détailPrincipales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement
Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.
Plus en détail