Architectures Java/Web : Servlets & JSP

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

Download "Architectures Java/Web : Servlets & JSP"

Transcription

1 Architectures Java/Web : Servlets & JSP Alain Paoli Novembre Plan Architectures CGI, PHP, Servlets, JSP Principes de programmation CGI vs. Servlet et PHP vs. JSP Servlets Exemple Cycle de vie Traitement des formulaires Sessions Connexions au bases de données JSP Syntaxe Tags JSP pré-définis: traitement des formulaires HTML Exemple simple Architecture MVC: Exemple 2 1

2 Page HTML Architecture CGI logon: pass: **** OK Requête HTTP Serveur Web Module CGI Programme CGI Vous êtes enregistré! Page Réponse Client Serveur Module CGI (Common Gateway Interface): appelle le programme CGI correspondant à la requête. Pour chaque requête, un processus système est créé sur le serveur. 3 Page PHP <?php.. logon: xx@... pass: **** OK Vous êtes enregistré!..?> Architecture PHP Requête HTTP Page Réponse Serveur Web Interprète la page PHP et génère la page de réponse Module PHP MySQL Client Serveur Pour chaque requête: Suivant la plate-forme (Apache/mySQl/Unix, ou autre), on utilise un processus existant, ou on en crée un pour interpréter la page PHP et 4 générer la page de réponse. 2

3 Page HTML Architecture Servlet logon: pass: **** OK Vous êtes enregistré! Requête HTTP Page Réponse Serveur Web Servlet Engine Instance du Servlet Thread Client Serveur ServletEngine: dirige la requête vers le servlet correspondant. Servlet = instance d une classe héritant de javax.servlet.http.httpservlet Une seule instance est crée par le moteur de servlet. Pour chaque requête Lancement d un nouveau thread sur la méthode doget ou dopost de l instance unique du servlet pour générer la page de réponse. 5 Page JSP <%.. logon: xx@... pass: **** OK Vous êtes enregistré!.. %> Architecture JSP Requête HTTP Page Réponse Serveur Web JSP Engine Servlet Engine Instance du Servlet Thread Client Serveur JSP Engine: Si la page JSP n a pas encore été compilée sous la forme d un servlet: Génère le source d un servlet, puis compile ce source. Passe la requête au Servlet Engine, qui crée l instance de ce servlet. 6 3

4 Programmation CGI vs. Servlet Un même principe: Un programme génère le code HTML de la page de réponse. Logique de l application et présentation ne sont pas séparées. Différences: CGI: Programmation classique. Les paramètres de la requête HTTP sont passés au programme appelé. Servlet: C est une instance d une classe qui hérite de la classe javax.servlet.httphttpservlet et qui redéfini la (ou les) méthode(s) dopost ou doget. Appel de la méthode dopost ou doget du servlet suivant le type de la requête HTTP (GET ou POST) Les paramètres de la requête HTTP sont encapsulés dans un objet (javax.servlet.http.httpservletrequest) passé en paramètre des méthodes dopost ou doget. 7 Code réentrant: le servlet ne doit pas mémoriser d état. Programmation PHP / JSP Un même principe: On insère du code PHP (vs. JSP) dans du code HTML Séparation (partielle ou complète) entre logique de l application et présentation. Différences entre PHP et JSP: Syntaxiques: en JSP on distingue entre: du code Java qui retourne une valeur: expression entre <%= et %> du code Java qui exécute une action: scriptlet entre <% et %> Sémantiques: sessions, connexions aux bases de données,... En JSP on peut : Utiliser les tags pré-définis JSP Définir ses propres tags JSP: permet d étendre le langage JSP. 8 4

5 Programmation des Servlets 9 import java.io.*; import javax.servlet.*; import javax.servlet.http.*; Servlet - Idiome Déclaration des noms de packages dont on va utiliser les classes. Permet de citer les classes avec leur nom court. MonServlet hérite de HttpServlet public class MonServlet extends HttpServlet { Surcharge la méthode doget public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { Objet encapsulant la requête HTTP Objet encapsulant la réponse // (1) Utiliser l objet "request" pour lire les headers HTTP (ex. cookies) // et les paramètres transmis par un formulaire HTML // (2) Spécifie les headers HTTP (e.x. MIME type, passer des cookies) à l aide de l objet // "response" pour écrire la page réponse, et récupère le flot de sortie via cet objet "response" PrintWriter out = response.getwriter(); // Utiliser l objet "out" pour écrire la page réponse envoyée au navigateur 10 5

6 Servlet Exemple import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HelloWWW extends HttpServlet { public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { response.setcontenttype("text/html"); // Positionne le type MIME dans le header de la réponse PrintWriter out = response.getwriter(); out.println("<html>"); out.println("<head><title>hello WWW</TITLE></HEAD>"); out.println("<body>"); out.println("<h1>hello WWW</H1>"); // Pas de séparation logique de l application / présentation out.println("</body></html>"); 11 Servlet - Cycle de Vie Initialisation appel de la méthode init() définie au niveau de la classe HttpServlet. Ne fait rien. Peut être surchargée. Traitement requêtes HTTP appel de la méthode service() définie au niveau de la classe HttpServlet. Cette méthode dispatche vers doget() ou dopost() suivant le type de requête HTTP reçue. Les méthodes doget et dopost définies au niveau de la classe HttpServlet ne font rien. Destruction appel de la méthode destroy() définie au niveau de la classe HttpServlet. Ne fait rien. Peut être surchargée. 12 6

7 Paramètres de la requête HTTP PHP: Vu comme des variables globales de la page PHP. Servlet: Encapsulés dans une instance de la classe HttpServletRequest passée en paramètre de doget ou dopost. Supporte les méthodes: getcookies(): retourne un tableau d objets Cookie. getheader(string headername): retourne la valeur (String) d un en-tête HTTP. getsession(): retourne la session sous la forme d un objet HttpSession getparameter(string parametername): retourne la valeur (String) d un paramètre mono-valué. getparametervalues(string parametername): retourne la valeur (tableau de String) d un paramètre multi-valué. getparameternames(): retourne une énumération (instance de la classe Enumeration) des noms de paramètres. etc 13 Traitement des formulaires logon: xx@... pass: **** OK Requête HTTP /MonServlet?logon=xx@yy&pass=123&ok=OK nom servlet paramètres Servlet Engine <html> <form method= POST action= MonServlet > <input name= logon type= text > <input name= pass type= password > <input name= ok type= submit value= OK > </form> </html> Formulaire HTML Instance de HttpServletRequest logon=xx@yy pass=123 ok= OK Instance de HttpServletResponse dopost(httpservletrequest request, HttpServletResponse response) Vous êtes enregistré! Page Réponse Instance de MonServlet 14 7

8 Traitement des formulaires package exemple; import javax.servlet.http.*; import java.io.*; public class ConnectionServlet extends HttpServlet { public void dopost(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { // (1) Utiliser l objet "request" pour lire les paramètres String logon = request.getparameter( "logon"); String pass = request.getparameter( "pass"); // (2) Accéder au PrintWriter pour écrire la réponse response.setcontenttype("text/html"); PrintWriter out = response.getwriter(); // (3) Vérifier que l utilisateur est enregistré // // (4) Il est enregistré: afficher message de bienvenue out.println("<html>vous êtes Enregistré!</HTML>"); // (5) Il n est pas enregistré: afficher message d erreur out.println("<html>erreur: Vous n êtes pas Enregistré!</HTML>"); 15 Sessions en PHP But: Stocker, pour un utilisateur donné, des variables persistantes d une requête HTTP à l autre. Valeurs stockées dans un fichier sur le serveur. Ne permet pas de stocker certains types de variables comme des connexions à une base de données. Le programmeur doit déclarer que la page PHP participe à la session (fonction PHP session_start()). Implémentées à l aide d un cookie, ou d un identifiant passé en paramètre de la requête HTTP. Si l identifiant est utilisé, il est manuellement propagé comme paramètre des requête HTTP par le programmeur (variable PHP SID ) <A HREF="nextpage.php?<?=SID"?>cliquez ici</?> La session est terminée explicitement par le programmeur, suite à une action de l utilisateur, ou a l initiative du serveur si sa durée dépasse une valeur fixée dans le fichier de configuration de PHP. 16 8

9 Sessions avec Servlets But: Maintenir un environnement (i.e. ensemble d objets) pour un utilisateur donné. La session est implémentée par un objet HttpSession qui est accessible via une méthode de l objet HttpServletRequest: HttpSession session = request.getsession(); Le programmeur ou le JSP Engine stocke / retrouve des objets dans un dictionnaire (i.e. chaque objet est associé à un nom unique) géré par l objet HttpSession. Une session (i.e. un objet HttpSession) est automatiquement créé pour chaque utilisateur qui se connecte au site. Processus complètement automatisée, le programmeur n a rien à faire. La session est implémentée à l aide de cookies temporaires ou (si le navigateur refuse les cookies) par un identifiant passé en paramètre de toutes les requêtes HTTP. Se termine à l initiative du programmeur, ou au bout d un certain temps d inactivité (i.e. pas de requête HTTP à traiter pour cette session). Ce 17 temps d inactivité est paramétré au lancement du JSP Engine. Connexions aux BDR PHP: Principe: 1 page PHP 1 connexion à une base de données Avec mysql / UNIX: possibilité d utiliser des connexions persistantes. Servlet: On utilise un pool de connexions (implémenté par le serveur d application) L objet qui gère le pool demande n connexions à la base de données. Lorsqu un servlet a besoin de faire une requête SQL, il: (1) demande une connexion libre au pool (sinon il attend). (2) effectue sa requête et lit les résultats avec cette connexion. (3) rend cette connexion au pool (i.e. elle redevient libre ). 18 9

10 Programmation JSP 19 Syntaxe Expression: <%= expression Java %> Expressions Java retournant une valeur convertible en une String insérée dans la page réponse. Eléments de scripts (Scriptlet): <% instructions Java %> code Java inclut dans le servlet. Déclarations: <%! déclarations Java %> déclaration de variables ou de méthodes Directives %> contrôle la structure globale du servlet Tags: <jsp:usebean...> Tags jsp pré-définis: contrôle le comportement du moteur JSP Tags jsp définis par le programmeur: contient logique applicative et autorise un contrôle fin de la génération de la page réponse

11 Variables pré-définies JSP Des variables pré-définies peuvent être utilisées dans les expressions et les scriptlets: request (de type HttpServletRequest) response (de type HttpServletResponse) out (de type PrintWriter): utilisé pour écrire la page réponse session (de type HttpSession): la session de l utilisateur.. Exemple: <p>le nom de votre machine est: <%= request.getremotehost() %>.</p> 21 Expression JSP Sert à inclure une valeur dans le flot de sortie (page réponse) Syntaxe: <%= expresssion Java %> Exemple: <p>aujourd hui: <%= new java.util.date() %> </p> L expression Java est évaluée, convertie en une string, et insérée dans la page. Cette évaluation est faite lors du traitement de la requête HTTP. Attention: Une expression ne comporte pas de ; final 22 11

12 Scriptlet JSP Permet d insérer n importe quel code Java Syntaxe: <% code Java %> Exemple: Les variables déclarées dans un scriptlet Attention: les instructions se terminent normalement par un ;. <% sont locales. String querydata = request.getquerystring(); out.println("attached GET data: " + querydata); %> Le code d un scriptlet est inséré tel quel dans le corps de la méthode service() du servlet généré, et n importe quel code HTML statique avant ou après un scriptlet est converti en instructions d écriture de la page réponse. 23 Exemple: Scriptlet JSP <% if (Math.random() < 0.5) { %> Vous avez <B>gagné</B>! <% else { %> Vous avez <B>perdu</B>! <% %> Dans le servlet, sera compilé en quelque chose comme: if (Math.random() < 0.5) { out.println( Vous avez <B>gagné</B>!"); else { out.println(" Vous avez <B>perdu</B>!"); 24 12

13 Déclaration JSP Permet de définir des méthodes ou des attributs au niveau du servlet généré par compilation de la page JSP. La valeur d un attribut sera partagée par tous les threads appliqués à la méthode service(), et accessible de n importe quel scriptlet de la page JSP La méthode sera accessible de n importe quel scriptlet de la page JSP. Syntaxe: <%! Code Java %> Exemples: <%! private int accesscount = 0; %> <!-- déclaration d attribut --> <p>nombre d accès à cette page : <%= ++accesscount %></p> <!-- utilisation --> <%! public String hello() { return "hello ; %> <!-- déclaration de méthode --> 25 Directive JSP Une directive affecte la structure du servlet. Syntaxe: <%@ directive attribut="valeur" %> Les deux principales directives sont page et include: page: import de classes Java, passage de paramètres au servlet généré. include: insertion (statique) d un fichier lors de la compilation de la page JSP en servlet. taglib: déclaration de la librairie contenant un tag défini par le programmeur

14 Tags JSP pré-définis Possèdent une syntaxe XML. Modifient dynamiquement le comportement du moteur JSP. jsp:usebean - Retrouve ou instancie un Bean. jsp:setproperty - Positionne les propriétés d un Bean. jsp:getproperty - Récupère la valeur d une propriété d un Bean et l insère dans la sortie. jsp:include - Inclut (dynamiquement) un fichier lors de l exécution de la requête. jsp:forward - Dirige la requête vers une autre page. jsp:plugin - Génère du code spécifique pour le navigateur permettant d insérer un applet (tag OBJECT) ou le plug-in de la JVM (tag EMBED). 27 Tag <jsp:usebean> Syntaxe: <jsp:usebean id="user" class="appli.user" scope="session"/> Cette action associe un Bean, instance de la classe spécifiée par class, avec une portée spécifiée par scope, avec la référence spécifiée par id. Si une instance associée avec la même référence n est pas trouvée dans la portée, une nouvelle instance est crée. Elle est stockée dans la session si cette portée est session. Portée: quatre valeurs possibles application: bean visible de toutes les pages, pour toutes les sessions session: bean visible de toutes les pages pour une session considérée request: bean visible de toutes les pages participant à une requête, pour une session considérée page: bean visible dans la page considérée, pour une session considérée 28 14

15 Tag <jsp:setproperty> Syntaxe: deux variantes d utilisation (A) <jsp:setproperty name="user" property="*" /> (B) <jsp:setproperty name="user" property="logon" param="nomuser" /> Les deux variantes modifient une ou des valeurs de propriétés du Bean dont la référence est spécifiée par name, en utilisant l introspection: Variante (A): Modifie toutes les propriétés du Bean avec les valeurs passées en paramètres dans la requête, de telle façon qu un paramètre de nom prop modifiera la valeur d une propriété de nom prop (i.e. ce Bean est muni d un setter setprop()), en réalisant des conversions implicites (String type prop ). Variante (B): Modifie une propriété du Bean avec la ou les valeurs passées dans la requête pour un paramètre de telle façon que le paramètre de nom param modifiera la valeur de la propriété de nom prop (i.e. ce Bean est muni d un setter setprop()), en réalisant des conversions implicites (String type prop ). 29 Formulaires: PHP vs. JSP PHP: Les composants de formulaires (ex: <input type= text >) sont vues comme des variables PHP globales <html> <form method= POST action= MaPage.php > <input name= logon type= text > <input name= pass type= password > <input name= ok type= submit value= OK > </form> </html> JSP: <jsp:usebean id="user" class=user scope="session"/> <jsp:setproperty name="user" property = "*"/> <html> <form method= POST action= MaPage.jsp > <input name= logon type= text value= <% user.getlogon() %>> <input name= pass type= password value= <% user.getpass() %>> > <input name= ok type= submit value= OK > </form> </html> <?php if ($logon!= "" and $pass!= "") { // les variables $logon et $pass n ont // pas besoin d être déclarées..?> Bean user logon: xxxx pass: zzzz 30 15

16 <jsp:usebean id="user" class="user" scope="session"/> Traitement des formulaires pass: **** OK Le servlet Engine: (1) Si pas d objet référencé par user dans la session, en fabrique un et le référence. (2) Par introspection, positionne dans les propriétés du Bean les valeurs correspondantes passées en paramètres dans la requête HTTP. Bean User =xx@yy pass=123 Requête HTTP /MonServlet? =xx@yy&pass=123&ok=OK Instance de HttpSession paramètres Instance de HttpServletRequest =xx@yy pass=123 ok= OK Servlet Engine Instance de HttpServletResponse dopost(httpservletrequest request, HttpServletResponse response) Page d accueil du site Page Réponse Instance du Servlet 31 Bean User package appli; public class User { private String logon = "" ; // chaîne vide private String pass = ""; // chaîne vide public User() { // constructeur sans paramètre public String getlogon() { return logon; public void setlogon(string logon) { this.logon = logon; public String getpass() { return pass; public void setpass(string pass) { this.pass = pass; public boolean isregistred() { // si (logon!= null) et (pass!= null) et (logon!= "") et (pass!= "") // et si logon et pass correspondent à un utilisateur enregistré // alors retouner true sinon retourner false Par introspection, on déduit que ce Bean contient les propriétés: - logon de type String, accessible en lecture et écriture. - pass de type String, accessible en lecture et écriture. - registred de type boolean accessible en lecture

17 Traitement des formulaires (1) Crée une référence "user" vers un Bean User stocké dans la session (le Bean est créé si besoin) <jsp:usebean id="user" class=appli.user scope="session"/> <jsp:setproperty name="user" property = "*"/> <% if (user.isregistred()) { // rediriger la requête HTTP vers la page d accueil du site response.sendredirect("accueil.jsp"); else { <p>vous n êtes pas enregistré!</p> <% %> <html> <form method="post" action="login.jsp"> <input name= "logon" type="text" value="<%= user.getlogon() %>" > <input name="pass" type="password" value="<%= user.getpass() %>" > <input name="ok" type="submit" value="ok"> </form> </html> (2) Déclenche les méthodes setxxx du Bean "user" pour chaque paramètre de la requête dont le nom est xxx (3) Récupère la valeur d une propriété du Bean "user" 33 Architecture MCV: Exemple Saisie d un formulaire simple d inscription: La première fois, le formulaire est affiché vierge. L utilisateur saisi ses informations, puis clique sur OK. S il y a des erreurs de saisie: On réaffiche le formulaire avec les valeurs saisies + un message pointant les erreurs commises. S il n y a pas d erreurs de saisie: On réaffiche le formulaire avec les valeurs saisies + un message confirmant l inscription

18 Exemple MVC: diagramme d états Action: init Etat: initialisation Affichage du formulaire vierge Action: ctrl Action: ctrl Etat: erreurs_saisies Affichage du formulaire saisi + message d erreur Etat: saisie_ok Affichage du formulaire saisi + message OK fin 35 Architecture MVC - Si action=init: ne fait rien. - Si action=ctrl: contrôle valeurs saisies. si erreur: positionne message erreur dans le Bean sinon: positionne message OK dans le Bean - Toujours: rediriger la requête vers une page JSP /ControlServlet?action=ctrl Contrôleur (Servlet) /ControlServlet?action=ctrl Appel des méthodes: ctrl() et setmsg(msg) sur le bean Vue (Page JSP) Modèle (Bean) 36 18

19 Bibliographie Java: Série d'articles sur les bases du langage Java: Cours Servlet: (français) (Servlet + JSP) Déploiement des Servlets dans Tomcat et BEA Systems: servletweblogic.html Cours JSP: (français) (débutant JSP) 37 Bibliographie (suite) Java Channel (Références articles sur Java - Niveau avancé): Home Page JSP de Sun: Home page Jakarta / Apache: Ressources: (JSP FAQ) Implémentations du moteur de JSP Tomcat (et sous-projets):

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.

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. 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étail

JavaServer Pages (JSP)

JavaServer 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étail

Web Tier : déploiement de servlets

Web 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étail

Les architectures 3-tiers Partie I : les applications WEB

Les 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étail

Le développement d applications Web

Le 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étail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-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étail

Application Web et J2EE

Application 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é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

HTTP 1.1. HyperText Transfer Protocol ... ... TCP IP ...

HTTP 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é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

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Module BD et sites WEB

Module 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é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

Mise en œuvre des serveurs d application

Mise 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étail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

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

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

Cours 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. 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étail

Documentation CAS à destination des éditeurs

Documentation 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étail

Alfstore workflow framework Spécification technique

Alfstore 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étail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

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

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

Institut 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 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étail

Groupe Eyrolles, 2005, ISBN : 2-212-11406-0

Groupe 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étail

Projet Java EE Approfondi

Projet Java EE Approfondi EISTI Projet Java EE Approfondi Manuel d installation du framework Stripes Amaury Languillat, Yann Gonzalez, Arnaud Recher, Vincent Laronde, Anys Mechkar 10 Manuel d installation Téléchargement On part

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

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

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

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes

Plus en détail

Applications et Services WEB: Architecture REST

Applications et Services WEB: Architecture REST Applications et : Erick Stattner Laboratoire LAMIA Université des Antilles et de la Guyane France erick.stattner@univ-ag.fr Guadeloupe 2014-2015 Erick Stattner Applications et : 1 / 90 Description du cours

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture 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é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

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement

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

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

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

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

Développement des Systèmes d Information

Dé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étail

10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]

10. 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étail

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à 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étail

Aspects techniques : guide d interfaçage SSO

Aspects 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étail

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une

Plus en détail

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

Extension 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étail

//////////////////////////////////////////////////////////////////// Administration bases de données

//////////////////////////////////////////////////////////////////// Administration bases de données ////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données

Plus en détail

Création d objet imbriqué sous PowerShell.

Création d objet imbriqué sous PowerShell. Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.

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 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

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

< 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

Prendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;

Prendre 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é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

Java Licence Professionnelle CISII, 2009-10

Java 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étail

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé) Introduction PHP = Personal Home Pages ou PHP Hypertext Preprocessor Langage de script interprété (non compilé) Plan Avantages Fonctionnement interne Bases du langage Formulaires Envoi d un email Avantages

Plus en détail

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

Failles XSS : Principes, Catégories Démonstrations, Contre mesures HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Séminaire 15 ans HSC Failles XSS : Principes, Catégories Démonstrations,

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

SIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

SIO-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étail

Authentification et contrôle d'accès dans les applications web

Authentification 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étail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Messagerie asynchrone et Services Web

Messagerie asynchrone et Services Web Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

Une introduction à Java

Une introduction à Java Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)

Plus en détail

Jacques Lonchamp. Conception. d applications en Java/JEE. Principes, patterns et architectures

Jacques Lonchamp. Conception. d applications en Java/JEE. Principes, patterns et architectures Jacques Lonchamp Conception d applications en Java/JEE Principes, patterns et architectures Illustration de couverture : Abstract triangle mosaic background karandaev - Fotolia.com Dunod, 2014 5 rue Laromiguière,

Plus en détail

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

Cette 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étail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 Informations juridiques Copyright 2010 Adobe Systems Incorporated and its licensors. All rights reserved. Administration d Adobe LiveCycle Mosaic 9.5 13 octobre

Plus en détail

RMI le langage Java XII-1 JMF

RMI 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étail

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

Programmation Internet en Java

Programmation Internet en Java Chapitre 8 Programmation Internet en Java Vous avez déjà utilisé Internet, le plus connu des inter-réseaux mondiaux d ordinateurs et quelques-uns de ses services, en particulier le web et le courrier électronique.

Plus en détail

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

Bases de Données et Internet

Bases de Données et Internet Informatique S6 3A Bases de Données et Internet Python: SGBD et CGI Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2008

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

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 L i a m T A R D I E U www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 Sommaire Sommaire... 2 Eléments initiaux... 3 Base de données... 3 Tables... 4 membres... 4 commandes... 4 articles... 4 details_commandes...

Plus en détail

INF8007 Langages de script

INF8007 Langages de script INF8007 Langages de script Sockets et serveur 1/18 INF8007 Langages de script Sockets et serveur Michel Desmarais Génie informatique et génie logiciel École Polytechnique de Montréal Hiver, 2014 INF8007

Plus en détail

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web NFA016 : Introduction O. Pons, S. Rosmorduc Conservatoire National des Arts & Métiers Pour naviguer sur le Web, il faut : 1. Une connexion au réseau Réseau Connexion physique (câbles,sans fils, ) à des

Plus en détail

1. La plate-forme LAMP

1. La plate-forme LAMP Servi ces pour intranet et Internet Ubuntu Linux - Création et gestion d un réseau local d entreprise 1. La plate-forme LAMP Services pour intranet et Internet La fourniture d'un site pour le réseau ou

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

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

Cours 14 Les fichiers

Cours 14 Les fichiers Cours 14 Les fichiers F. Gayral 1 Fichier : définition /media/travaux/documents/fgenseignement/java1/courstpsfgfc/14-fichiers/voirtypefichiers Fichier = ensemble d informations codées et stockées sur une

Plus en détail

TP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet

TP 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étail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

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

2 Chapitre 1 Introduction

2 Chapitre 1 Introduction 1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné

Plus en détail

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

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données EARTH et Threaded-C: Éléments clés du manuel de références de Threaded-C Bref historique de EARTH et Threaded-C Ancêtres de l architecture EARTH: Slide 1 Machine à flux de données statique de J.B. Dennis

Plus en détail

Une introduction à la technologie EJB (2/3)

Une introduction à la technologie EJB (2/3) Une introduction à la technologie EJB (2/3) 1 Les singletons des EJB 3.1 1.1 Synchronisation gérée manuellement Depuis la version 3.1, des EJB Statless à instance unique sont maintenant disponibles : ce

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

Formation en Logiciels Libres. Fiche d inscription

Formation 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étail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

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

Exceptions. 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étail

Introduction aux «Services Web»

Introduction aux «Services Web» Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

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

Programmation Web. Introduction

Programmation Web. Introduction Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)

Plus en détail

«Cachez-moi cette page!»

«Cachez-moi cette page!» «Cachez-moi cette page!» Atelier Pratique 1h30 Hugo Hamon (@hhamon) http://hugohamon.com Qui suis-je? Au menu de cet atelier 1. Introduction 2. Avantages 3. Expiration (Expires & Cache-Control) 4. Validation

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

RÉALISATION D UN SITE DE RENCONTRE

RÉALISATION D UN SITE DE RENCONTRE RÉALISATION D UN SITE DE RENCONTRE Par Mathieu COUPE, Charlène DOUDOU et Stéphanie RANDRIANARIMANA Sous la coordination des professeurs d ISN du lycée Aristide Briand : Jérôme CANTALOUBE, Laurent BERNARD

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail