P. 1
J2EE

J2EE

|Views: 384|Likes:
Publié parHamza El Alami

More info:

Categories:Topics, Art & Design
Published by: Hamza El Alami on May 04, 2011
Droits d'auteur :Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

03/03/2013

pdf

text

original

Sections

Technologies J2EE et environnements

PLAN
• Matrice de connaissances J2EE. • Présentation J2EE. • Outils de développement. – BD postgres. – Jboss AS ou Tomcat. – Eclipse IDE. • Développement de composants Web – Evolution des applications Web.

PLAN
• Développement de composants Web J2ee. – Servlets. – JSPs – Taglibs. • Développement de composants métier J2ee. – EJBs session. – EJB persistance. – EJB message. • Evaluation – Présentations – Examen

Introductions
• Vos prénoms. • Vos attentes par rapport à ce cours. • Votre formation : – Java. – Orienté objets. – Services distants. – XML. • Vos projets et stages.

Matrice de connaissances J2EE

Pourquoi J2EE ?
• Java était initialement dirigée vers les « clients » • Avantages de Java: – Portabilité inter plateformes – Threading natif, réseaux, gestion de la mémoire – Cycle de développement rapide Ces point sont au moins aussi important pour les serveurs

Qui produit J2ee ?
Java est un langage crée pas SunMicrosystems • J2ee est une solution développée par les plus grands constructeurs de logiciels : – Sun – IBM. – Oracle. – Sap. – Borland. – BEA. –…

Technologie J2EE
• Développée à base de technologies pur Java • 3 plate-formes se présentent:
J2EE. J2ME. J2SE.

Technologie J2EE
• J2EE / JEE
– Java 2 Enterprise Edition, ou Java EE (anciennement J2EE), est une spécification pour la technologie Java de Sun plus particulièrement destinée aux applications d’entreprise. Dans ce but, toute implémentation de cette spécification contient un ensemble d’extensions au Framework Java standard (J2SE, Java Standard Edition) afin de faciliter la création d’applications réparties.

Technologie J2EE
• J2ME / JME
– J2ME (Java 2 Micro Edition) ou Java ME est le framework Java spécialisé dans les applications mobiles. Des plateformes Java compatibles avec J2ME sont embarquées dans de nombreux téléphones portables et PDA.

Technologie J2EE
• J2SE / JSE
– J2SE (Java 2 Standard Edition) est le Framework Java destiné aux applications pour poste de travail. Ce Framework contient toutes les API de base, mais également toutes les API spécialisées dans le poste client (Swing, AWT et Java2D), ainsi que des API d'usage général comme JAXP (pour le parsing XML) et JDBC (pour la gestion des bases de données).

Architecture Java EE

EJB
• Un composant Entreprise JavaBeans (EJB) est une classe ayant des champs et des méthodes pour mettre en application des modules de la logique métier (Business Logic). C’est comme à un module pouvant être employé seul ou avec d'autres entreprise beans pour exécuter la logique métier sur le serveur J2EE. Il existe actuellement trois types d'entreprise bean :
– les beans session (Session Bean) – les beans entité (Entity Bean) – les beans contrôlés par message (Message Driven Bean)

Les entreprise beans interagissent le plus souvent avec des bases de données.

Servlets
• Techonologie Java utilisée pour effectuer des traitements coté serveur en réponse aux requêtes provenant en général de poste clients distants. • Bien que les servlets puissent répondre à n'importe quel type de requête, elles sont généralement employées pour répondre à des requêtes de type HTTP et qui permettent de retourner dynamiquement des pages html.

JSP
• Les Java Server Pages (JSP) permettent d'insérer des petits bouts de code Java (scriptlets) directement dans du code html. Une page JSP est un document qui contient deux types de texte:
– Des données statiques (qui peuvent être exprimées en n'importe quel format texte tel que le HTML. – Des éléments de JSP, qui déterminent comment la page construit le contenu dynamique.

JCA
• Les connecteurs JCA sont des modules qui se déploient sur les serveurs d'application. • Ils permettent de connecter un serveur J2EE à un système propriétaire ("legacy system"), et de normaliser les accès et interactions avec ce système. • L'api JCA défini un contrat entre le serveur d'application et le système, via des interfaces comme le fait jdbc.

JTA
• JTA / JTS (Java Transaction API/Java Transaction Services) est un API définissant des interfaces standard avec un gestionnaire de transactions. • Une transaction est une unité d’interaction avec le système de gestion de base de données. Elle est traité d’une manière cohérente et fiable indépendamment des autres transactions.

JMS
• Java Message Service (JMS) permet d'envoyer et de recevoir des messages de manière asynchrone entre applications ou composants Java. • Un client peut également recevoir des messages de façon synchrone dans le mode de communication point à point (pour cela, il doit invoquer la méthode receive() qui est bloquante).

JDBC
• JDBC est une API java disponible depuis la version 1.1 du JDK. • JDBC est un nom déposé et non un acronyme, même si en général on lui donne la définition suivante : Java DataBase Connectivity. • JDBC est constituée d'un ensemble d'interfaces et de classes permettant l'accès, à partir de programmes java à des bases de données. Mais, JDBC n'est pas restreinte à ce type de source de données. On peux aussi accéder à des sources de données sous forme de fichiers (fichiers XML par

JAAS
• Java Authentication and Authorisation Service est un package fournissant des services d'authentification (login) et d'autorisation (vérification de permissions pour l'exécution de méthodes). • JAAS est hautement configurable, et permet aux développeurs d'écrire leurs propres modules.

JavaMAIL
• JavaMail est l'API standard de gestion des courriers électroniques de J2EE.

SAAJ
• SAAJ (SOAP with Attachments API for Java) est une API Java permettant l'envoi et la réception de messages XML sur le réseau. Ces messages obéissent à la spécification SOAP (Simple Object Access Protocol) . • SAAJ est souvent utilisée par des API de plus haut niveau comme JAXR et JAX-RPC. Mais, elle peut tout à fait être utilisée de manière indépendante.
• NB: JAXR (Java API for XML Registries) est une API intégrée à J2EE qui permet l'accès à différents types de registres XML. JAX-RPC (Java API for XML-based Remote Procedure Call) est une API permettant de créer des services et clients Web basés XML et RPC.

JNDI
• JNDI signifie Java Naming and Directory Interface, cette API permet :
– d’accéder à différents services de nommage ou de répertoire de façon uniforme. – d'organiser et rechercher des informations ou des objets par nommage. – de faire des opérations sur des annuaires.

Environnement de Travail
• Pour travailler, on a besoin de: - Eclipse IDE. - Tomcat Server. • Intégration de Tomcat à Eclipse.

Eclipse IDE
• Eclipse IDE est un environnement de développement intégré libre extensible, universel et polyvalent, permettant de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. • Il est principalement écrit en Java. • Il est modulaire  on peut y ajouter des plugins à volonté. exemple : plugin pour modélisation UML …

Avantages d’Eclipse IDE
Editeur de texte. Compilateur (javac pour java). Assistant au développement . Facilité d’intégration d’autre fonctionnalités.. - Débogueur.

Apache Tomcat
• Apache Tomcat est un conteneur libre de servlet Java EE. Issu du projet Jakarta, Tomcat est désormais un projet principal de la fondation Apache. • Tomcat implémente les spécifications des servlets et des JSP de Sun Microsystems. Il inclut des outils pour la configuration et la gestion, mais peut également être configuré en éditant des fichiers de configuration XML.

Arborescence des répertoires de Tomcat
• L'installation par défaut de Tomcat comprend les répertoires suivants :
– bin : Scripts et exécutables pour différentes tâches : démarrage (startup), arrêt, etc.. – common : Classes communes que les applications Web utilisent ; – conf : Fichiers de configuration au format XML et les DTD que ces fichiers XML utilisent . – logs : Journaux des applications Web et de Catalina . – server : Classes utilisées seulement par Catalina. – shared : Classes partagées par toutes les applications Web. – webapps : Répertoire contenant les applications web (et les éventuels .war). – work : Fichiers et répertoires temporaires (le cache).

C’est quoi JSP ?
• JSP = Java Server Pages • Une JSP est un fichier contenant du code HTML et des fragments de code Java exécutés sur le moteur de Servlets. • Comparable aux langages côtés serveur de type PHP, ASP, … • Les pages JSP sont converties en Servlet par le moteur de Servlets lors du premier appel à la JSP

Cycle de Vie d’une JSP

Cycle de Vie d’une JSP

Objets Implicites dans une JSP
• Lors de la transformation d’une JSP en Servlet par le conteneur, plusieurs objets implicites sont disponibles:

Notre première JSP
- Création de la première JSP. - Insertion de message en utilisant:
- HTML. - L’objet implicite « out ».

- Redirection vers une autre page.

Notre première JSP

Les Tags JSP
• Les tags JSP permettent de différencier le code HTML au code JAVA, on trouve:
– Tag de directive : <%@ … %> – Tag de commentaire: <%-- commentaire --%> – Tag de déclaration: <%! … %> – Tag de scriptlet: <%... %> – Tag d’expression: <%= … %>

Les Directives JSP
• Les directives contrôlent comment le serveur WEB doit générer la Servlet. • Elles sont placées entre les symboles <%@ et %> • Les directives suivantes sont disponibles:
– Include – Taglib – Page

Directives JSP: include
• Cette inclusion se fait au moment de la conversion. <%@ include file="unAutreFichier" %> • Tout le contenu du fichier externe est inclus comme s’il était saisi directement dans la page JSP.

Directives JSP: page
• La directive page définit les attributs spécifiques à une page.
– Import : importe un paquetage Java. Cette directive résulte en une instruction import dans la Servlet.
<%@ page import="java.util.*, java.text.*" %>

– Langage: définit le langage de script utilisé dans la page. – contentType: définit le type du contenu de la page générée.
<%@ page contentType="text/plain" %>

– errorPage: indique la page à afficher si une exception se produit pendant le traitement de la requête HTTP.
<%@ page errorPage="toto.jsp" %>

– isErrorPage: vaut true si la page est une erreur et false pour une page normale.

Eléments de script JSP: commentaire
• Cet élément de script est utilisé pour faire un commentaire dans le code JSP. • Le texte dans un commentaire JSP ne sera pas envoyé au client ni compilé dans la Servlet. • Les commentaires sont placés entre les symboles <%-- et --%> .

Eléments de script JSP: déclaration
• Une déclaration permet d’insérer du code dans la classe de la Servlet. • Les déclarations sont placées entre <%! et %> • Elle peut être utilisée pour:
– Déclarer un attribut de classe. – Spécifier et implémenter des méthodes.

• Les attributs et les méthodes déclarées dans la page JSP sont utilisables dans toute la page JSP.

Eléments de script JSP: scriptlet
• Les scriplets sont placées entre les symboles <% et %> • Tout code java a accès :
– aux attributs et méthodes définis par le tag déclaration <%! … %> – aux objets implicites.

Eléments de script JSP: expression
• • • • Sert à évaluer une expression et à renvoyer sa valeur. Les expressions sont placées entre les symboles <%= %> Retourne une valeur String de l’expression. Correspond à un scriptlet comme <% out.println(…); %>

Eléments de script JSP: scriptlets & éléments implicites
• Ce sont des objets identifiés par des noms de variables uniques au sein de la JSP:
– – – – – request : requête courante response : réponse courante session : session courante out : flot de sortie permet l’écriture sur la réponse application : contient des méthodes log() permettant d'écrire des messages dans le journal du contenu (ServletContext). – pageContext : utilisé pour partager directement des variables entre des pages JSP et supportant les beans et les balises. – exception : disponible uniquement dans les pages erreurs donnant information sur les erreurs

Exercices
• Ecrire une JSP qui retourne toutes les propriétés retournées par System.getProperties. • Ecrire un formulaire qui réceptionne et retourne des données.

Eléments de script JSP: scriptlets & éléments implicites Exemple : JSP qui récupère des informations du client
Objets implicites uniquement visibles dans une scriplet ou une expression JSP

JSP en Servlet

JSP en Servlet

JSP en Servlet

Cycle de Vie d’une JSP
• Le cycle de vie d’une JSP est identique à celui d’une servlet:
– La méthode jspInit() est appelée après le chargement de la page. – La méthode _jspService() est appelée à chaque requête. – La méthode jspDestroy() est appelé lors du déchargement.

Technique de gestion des erreurs
• • • Permet de contrôler la gestion des erreurs pendant l'exécution de l'application WEB. Les erreurs sont déclenchées par l'intermédiaire des exceptions et transmises à une page d'erreur. La définition de la page d'erreur se fait par la directive page et l'attribut errorPage.

Technique de gestion des erreurs
• Une page JSP est définie comme une page erreur par la directive page et l'attribut isErrorPage.

• Possibilité de manipuler l'exception qui a été lancée par l'objet implicite exception (Exception).
– exception.getMessage() : renvoie le message d'erreur décrivant l'exception. – exception.printStackTrace() : retourne la liste des appels de méthodes ayant conduit à l'exception.

Technique de gestion des erreurs

JSP et Actions
• Les actions permettent de faire des traitements au moment où la page est demandée par le client.
– utiliser des Java Beans. – inclure dynamiquement un fichier. – rediriger vers une autre page.

Les actions sont ajoutées à la page JSP à l'aide d'une syntaxe d'éléments XML (définis par des balises personnalisées).

Java Beans
• Permet de coder la logique métier de l'application WEB. • L'état d'un Bean est décrit par des attributs appelés propriétés. • La spécification des Java Beans définit les Beans comme des classes qui supportent principalement:
– Introspection : permet l'analyse d'un Bean (nombre de propriétés). – Événements : métaphore de communication. – Persistance : pour sauvegarder l'état d'un Bean.

Java Beans
• Les Java Beans sont des classes Java respectant un ensemble de directives.
– Un constructeur public sans argument. – Les propriétés d'un Bean sont accessibles au travers de méthodes getXXX (lecture) et setXXX (écriture) portant le nom de la propriété.

• Lecture et écriture des propriétés:
– type getNomDeLaPropriété() : pas de paramètre et son type est celui de la propriété.
– void setNomDeLaPropriété(type) : un seul argument du type de la propriété et son type de retour est void.

Java Beans
• Exemple : le retour de la classe Voiture

Java Beans
• Pour déclarer et allouer un Java Beans dans une page JSP il faut employer l'action <jsp:useBean>.

– id = "nom de l'instance" : nom de l'instance pour identification. – class = "Nom de la classe" : package du Bean. – scope = "attribut" : champ d'existence de l'objet Bean. • request : Bean valide pour la requête et peut être transmise (forward). • page : idem request sans transmission (le cas de l’objet pageContext). • session : Bean ayant la durée de vie de la session. • application : Bean créée pour l'application WEB courante.

Java Beans et JSP: lecture propriétés
• Pour lire une propriété du Bean deux éléments sont utilisés:
– La référence du Bean définie par l'attribut id – Le nom de la propriété

• Deux manières existent pour interroger la valeur d'une propriété et la convertir en String:
– En utilisant un tag action <jsp:getProperty>

– En utilisant l'éléments de scripts JSP : expression

Java Beans et JSP: écriture propriétés
• Modification de la valeur d'une propriété en utilisant le tag action <jsp:setProperty>.

Modification de l'ensemble de propriétés suivant les paramètres fournis par la requête.

Qu’est ce qu’une servlet ?
• Composant logiciel écrit en Java fonctionnant du coté serveur. Au même titre nous trouvons – CGI (Common Gateway Interface). – Langages de script coté serveur PHP, ASP (Active Server Pages). Permet de gérer des requêtes HTTP et de fournir au client une réponse HTTP. Une Servlet s’exécute dans un moteur de Servlet ou conteneur de Servlet permettant d’établir le lien entre la Servlet et le serveur Web.

Architecture Servlets

A quoi ça sert une servlet ?
• Créer des pages HTML dynamiques. • Effectuer des tâches de type CGI qui sont des traitements applicatifs coté serveur WEB:
– Manipulation d’une base de données – Gestion d’un système de surveillance, ...

• Respecter les principes d’une architecture : écrire une application en Java dont l’interface utilisateur est dans le client:
– Applet (SWING) – Téléphone portable (WAP) – Navigateur (HTML)

Avantages des servlets
• Portabilité – Technologie indépendante de la plate-forme et du serveur • Puissance
– Disponibilité de l’API de Java – Manipulation d’images, connectivité aux bases de données (JDBC), …

• Efficacité
– Une Servlet est chargée une seule fois. – Une Servlet conserve son état (connexions à des bases de données)

• Sûreté
– Typage fort de Java

Première Servlet: HelloWorld

L’API Servlet
• Une Servlet doit implémenter l'interface javax.servlet.Servlet et javax.servlet.ServletConfig.

• Plus simplement l'API Servlet fournit deux classes qui proposent déjà une implémentation:
– GenericServlet : pour la conception de Servlets indépendantes du protocole. – HttpServlet : pour la conception de Servlets

L'API Servlet : la classe GenericServlet
• Une Servlet qui hérite de GenericServlet est une Servlet indépendante du protocole. • Obligation d'implémenter la méthode service(…) qui reste le principal point d'entrée du client vers le serveur. • Besoin de vérifier explicitement le type de protocole.

L'API Servlet : la classe HttpServlet
• Dans la suite du cours nous allons utiliser uniquement des Servlets qui réagissent au protocole HTTP d'où l'utilisation de la classe HttpServlet. • HttpServlet redéfinit la méthode service(…)
– service(…) lit la méthode (GET, POST, …) à partir de la requête. – Elle transmet la requête à une méthode appropriée de HttpServlet destinée à traiter le type de requête (GET, POST, …)

HttpServlet : méthodes de traitement de requêtes pour traiter les Plusieurs méthodes sont fournies

différents types de requêtes (GET, POST, …). • Elles sont appelées méthodes de traitement de requêtes • Elles ont un en-tête identique doXXX(…) où XXX correspond au type de requête
– doPost(…) est la méthode pour traiter les requêtes de type POST – doGet(…) est la méthode pour traiter les requêtes de type GET – doHead(…), doTrace(…), …

• Selon le type de requête (GET ou POST) le

HttpServlet : requête et réponse
• La méthode service(…) et par conséquent les méthodes de traitement de requêtes (ex : doPost(…)) sont appelées.
– un objet requête. – un objet réponse.

• • Cet objet encapsule la requête HTTP et fournit des méthodes pour accéder aux informations du client de l'environnement du serveur. • Exemples de méthodes
– String getMethod() : retourne le type de requête – String getServeurName() : retourne le nom du serveur – String getParameter(String name) : retourne la valeur d'un paramètre – String[] getParameterNames() : retourne le nom des les paramètres – String getRemoteHost() : retourne l'IP du client – String getServerPort() : retourne le port sur lequel le serveur écoute – String getQueryString() : retourne la chaîne d’interrogation

HttpServlet : objet requête HttpServletRequest HttpServletRequest hérite de ServletRequest

HttpServlet : objet requête HttpServletRequest Exemple : Servlet qui affiche un certains nombre
d'informations issues de HttpServletRequest.

• •

HttpServlet : objet réponse HttpServletResponse HttpServletResponse hérite de ServletResponse
Cet objet est utilisé pour construire un message de réponse HTTP renvoyé au client, il contient:
– les méthodes nécessaires pour définir le type de contenu, en-tête et code de retour. – un flot de sortie pour envoyer des données (par exemple HTML) au client.

Exemples de méthodes
– void setStatus(int) : définit le code de retour de la réponse – void setContentType(String) : définit le type de contenu MIME – ServletOutputStream getOutputStream() : flot pour envoyer des données binaires au client. – void sendRedirect(String) : redirige le navigateur vers l'URL

Exemple 1 : écrit un message de type TEXT au client
– Utilisation de la méthode PrintWriter getWriter()

HttpServlet : objet réponse HttpServletResponse

Exemple 2 : effectue une re-direction vers un site web
– Utilisation de la méthode sendRedirect(String)

HttpServlet : objet réponse HttpServletResponse

Exemple 3 : effectue un téléchargement de fichier sur le client

HttpServlet : objet réponse HttpServletResponse

Exemple 4 : effectue un rechargement automatique de la page (autorefresh)

HttpServlet : objet réponse HttpServletResponse

Servlets et formulaires : du côté HTML
• Utilisation de la balise <FORM> </FORM>
– Option METHOD : type de requête GET ou POST. – Option ACTION : l’URL où envoyer les données.

• Utilisation de composants IHM pour saisir des informations
– Contenu à l’intérieur de la balise FORM

• Chaque composant est défini au moyen d’une balise particulière SELECT, INPUT, TEXTAREA, …

Servlets et formulaires : du côté HTML
• A l’intérieur de chaque balise du composant (SELECT par exemple) • plusieurs options et notamment une (NAME) qui permet d’identifier le composant : NAME="mon_composant" • Les données sont envoyées quand l’utilisateur clique sur un bouton de type SUBMIT

Servlets et formulaires : du côté HTML

Servlets et formulaires : du côté Servlet
• Pour lire les données du formulaire : traiter la requête • Accéder par l’intermédiaire de l’objet HttpServletRequest aux Paramètres
– String getParameter(String p) : retourne la valeur du paramètre p – String[] getParamterValues(String p) : retourne les valeurs du paramètre p

• •

Architecture de développement d'une application WEB Une application WEB peut contenir plusieurs Servlets
Pour tester et déployer une Servlet, il faut un système d'exécution appelé conteneur de Servlets ou moteur de Servlets. Le conteneur réalise le lien entre la Servlet et le serveur WEB
– Transforme code Java (bytecode) en HTML – Associe à des URL's virtuels une Servlet

• •

Architecture de développement d'une application WEB Une application WEB est contenue dans un répertoire
physique sur le serveur. Une application WEB possède une hiérarchie de répertoires et de fichiers.

Le fichier web.xml : c’est quoi ?
• Le fichier web.xml regroupe les informations de fonctionnement de l'application WEB (description de déploiement du contexte). • Utilisation du format XML
– eXtensible Markup Language – Syntaxe universelle pour la structuration des données créée par le World Wide Web Consortium (W3C) en 1996. – Langage basé sur des balises permettant de donner une signification au document (HTML s'intéresse essentiellement à l'affichage) – Extensible par la possibilité de créer de nouvelles balises – Balises XML sensibles à la casse et à la rigueur (balise ouvrante = obligation d'une balise fermante) – La structure du document est défini par un fichier XSD (XML Schema Description)

Le fichier web.xml : c’est quoi ?

Le fichier web.xml : c’est quoi ?

Le fichier web.xml : c’est quoi ?

Se connecter aux bases de données
• Utilisation de l’API JDBC (Java DataBase Connectivity)
– JDBC est une API du niveau SQL, elle permet d’exécuter des instructions SQL et de retrouver les résultats (s’il y en a) – L’API est un ensemble d’interfaces et de classes conçues pour effectuer des actions sur toute base de données (mySQL, ORACLE, SYBASE, ODBC, Derby)

• Utilisation d’un gestionnaire de pilotes JDBC
– Un pilote JDBC spécifique à une base de données implémente l’interface java.sql.Driver – Peut dialoguer avec tout pilote conforme à l ’API JDBC où les pilotes sont disponibles à java.sun.com/products/jdbc

Se connecter aux bases de données
• JDBC en quatre étapes
– Charger le pilote – Se connecter à la base – Créer et exécuter une requête SQL – Traiter le résultat si nécessaire

Se connecter aux bases de données
• JDBC en quatre étapes
– Charger le pilote – Se connecter à la base – Créer et exécuter une requête SQL – Traiter le résultat si nécessaire

Se connecter aux bases de données : charger un pilote • Le pilote est obligatoire, il convertit les appels JDBC en
appels natifs. Il est nécessaire de connaître le nom de la classe du pilote JDBC que l’on veut utiliser
– – – – Pilote Pilote Pilote Pilote ORACLE : oracle.JDBC.driver.OracleDriver JDBC/ODBC : sun.jdbc.odbc.JdbcOdbcDriver mySQL : com.mysql.jdbc.Driver Derby : org.apache.derby.jdbc.ClientDriver

Le chargement du pilote se fait en utilisant la méthode
– Class.forName(String Pilote) throws ClassNotFoundException

… : se connecter à la base
• Pour se connecter à une base de données il faut fournir une URL qui indique où se trouve la base:
– – – – URL URL URL URL ORACLE : jdbc:oracle:thin:host:port:idbase ODBC : jdbc:odbc:IDDSN MySQL : jdbc:mysql:host Derby : jdbc:derby:host

La connexion à la base se fait en utilisant la méthode
– DriverManager.getConnection("URL","user","pass") throws SQLException

… : créer et exécuter une requête SQL
• La requête ne peut être créée et exécutée que si le pilote et la connexion à la base se sont valides. • Il faut avant tout créer une instruction SQL sur la base

• Il faut enfin exécuter la requête en écrivant concrètement le requête SQL executeQuery(String requete) throws SQLException

… : traiter le résultat
• Enfin il faut traiter un objet de type ResultSet il existe de nombreuses méthodes:
– boolean next() : avancer d’une ligne de la table résultante – String getString(String columName) : interroger un champ String par son nom – String getString(int columnIndex) : interroger un champ String par son index – int getInt(…) : interroger un champ Integer par son nom ou index – …

Se connecter aux bases de données

Centralisation de l’accès à la BD
• Lors de l'accès à une base de données depuis une Servlet, l'établissement de la connexion peut prendre quelques secondes. Ce délai augmente le temps de réponse de votre Servlet. La gestion d'un pool de connexions par Apache Tomcat permet de réduire ce temps puisque les connexions à la base de données sont déjà établies et gérées par Apache Tomcat qui fournit à la Servlet des objets DataSource. La configuration d’un pool de connexion se fait sur plusieurs étapes.

Étape 1:
• Préparer le driver correspondant à la base de données utilisée et l’ajouter dans le dossier « /common/lib »

Étape 2:
• Configuration de la ressource partagée: (context.xml)

Étape 3:
• Configuration dans le fichier web.xml de l’application web:

Accès au data-source
• L’accès au data-source se fait moyennant JNDI:

Liste de projets
Tous les mini-projets proposés seront champs d’application de tous les principes utilisés tout au long du cours « introduction à J2EE ». -- Clients d’une agence de voyage. -- Produits d’un stock. -- Voyages d’une agence de tourisme. -- Agence de livraison de colis. -- Employés au sein d’une entreprise.

You're Reading a Free Preview

Télécharger
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->