MVC et applications Web

Slides:



Advertisements
Présentations similaires
- Formation STRUTS 1 1.
Advertisements

JEE 5 - JSF F.Pfister 2 institut eerie Les technologies du web Servlets JSP MVC Model 1 : servlets + JSP MVC Model.
Programmation Web Les JSP.
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Toolkit Web Framework Java pour les IHMs Cédric Dumas mars 2008 contrat Creative Commons Paternité-Pas d'Utilisation Commerciale- Partage.
Tiré du cours de Richard Grin

Environnement Premier projet.
JSP Java Server Pages. Introduction Afin dimplémenter les règles métiers, coté serveur dans une application Web, larchitecture Java propose trois solutions.
Servlet JAVA.
JSP 2 Crash Course Michel Buffa UNSA
Connexion base de données
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Architectures NTiers Paradigme MVC
JavaBeans Réalise par: EL KHADRAOUY TARIK AOUTIL SAFOWAN.
Struts 1 & 2 Tlohi ibtissam Tabit boutaina Ilias bouras
JAVASERVER FACES Un framework Java pour le développement Web.
M2 – MIAGE/SID Servlet M2 – MIAGE/SID
SERVLETS PRESENTATION
Projet JAVA EE Approfondi
JSTL JSP Standard Tag Library
JSP (Java Server Pages)
Servlets. 2 H. Fauconnier M2-Internet Contenu dynamique Perl/cgi indépendant de la plateforme Extensions du serveur exemple ASP M2-Internet 3 H. Fauconnier.
1 CSI 2532 Lab6 Application Web et DB Février 27, 2012.
Michel Coletta - Journées PATTERNS Avril Grenoble1 STRUTS Introduction Technologies Java Architecture Développement Enseigner quoi ?
Adaptée du cours de Richard Grin
Initiation au web dynamique - TP
M2 – MIAGE/SID Servlet M2 – MIAGE/SID
Utilisation avancée.
Marc Le BihanStruts 1.x1 Marc Le Bihan. Struts 1.x2 Plan I)Développement web par Servlets et JSP. II)Prise en charge de Struts. III)Principe de fonctionnement.
Les servlets Java Les bases de la génération dynamique HTML en Java Sébastien Limet etGérard Rozsavolgyi Licence Professionnelle
© 1 Taglibs Applications Struts Taglibs. © 2 Applications Struts Les Tags Libraries Struts Bean : Accès aux JavaBean, aux ressources Html : Gestion des.
Chapitre 2 Développement Web avec les technologies JSP/Servlets
UV J2EE Module Java Expert
Présentation du framework JSF (Java Server Faces) dans le modèle événementiel MVCII
Struts.
1 / / 01 / 2003 Laurent GRANIE & Franck LEGENDRE – MIAGE 3ème année - ARCHITECTURE WEB ARCHITECTURE WEB – COURS III
Développer des applications WEB avec Struts
M2 – MIAGE/SID Servlet et session M2 – MIAGE/SID
Les Servlets Présentation Cycle de vie Principe de fonctionnement
Serveurs Web à contenu dynamique Emmanuel Cecchet INRIA Rhône-Alpes, Projet Sardes Rice University, Systems lab
Les Java Server Pages Dans ce chapitre, nous allons :
IFT 6800 Atelier en Technologies d’information Chapitre 5 Introduction aux Servelets & JSP.
Marcel Bosc Introduction Web Université Paris-13Département informatiqueIUT de Villetaneuse ère année, cours - 3/5.
1 UML: applications, études de cas ● Processus (Extreme Programming, Unified Process) ● Architectures ● Expression du besoin technique Conception Préliminaire.
Spring MVC, IOC, AOP Réalisé par: Mustapha EL-KABOUS.
By Kate Soglaeva. » FormHandlers do’s » Droplets do’s » Repositories do’s 2 ATG Hints by Kate Soglaeva.
Outils de gestion documentaire
15 ans au coeur de votre infrastructure
fonctionnalités iiS iis
WS Soap pour l’identification LDAP
Réalisation d’une application web sous le thème: «Mon vétérinaire » par : Benzineb Asmaa et Meftahi Oualid Présentation à Université Saad Dahlab Blida.
Présenté par : EA Gauthier PIPINO Thomas YOUNES Iheb
AJAX et JQuery
Programmation Orientée Objet C# El Akel Bouchra ISMONTIC Tanger 2013/2014.
Introduction à Internet
Présentation de frameworks J2EE 1 LIU Sizhao LUO Xin MALICK MANDENGUE Serge.
Diagrammes UML 420-KE2-LG.
Architecture BD Récif.
Programmation Web : DOM en PHP
Présentation Maverick / CookXML
J2EE Dr. Mohammed ERRITALI. Architecture 1-tiers Présentation Traitement données Navigateur Serveur Web Systèm e de fichiers.
 C’est quoi Laravel ?  Installer Laravel 5 avec Composer  Structure des Fichiers  Créer une page d’authentification  Comment faire le Routing dans.
© Robert Godin. Tous droits réservés.
FRAMEWORKS : XMLBEANS / STRIPES
© Robert Godin. Tous droits réservés.
YII Yes It Is !.
Bases de données Singleton pour la connexion
Transcription de la présentation:

MVC et applications Web Servlets/JSP et modèle MVC Model2, Struts Pierre-Yves Gibello - pierreyves.gibello@experlog.com Mise à jour : 30 Septembre 2004 Ce document est couvert par la licence Creative Commons Attribution-ShareAlike. This work is licensed under the Creative Commons Attribution-ShareAlike License.

Modèle MVC Model / View / Controller Modèle : l ’application métier, les données… ce qui est manipulé par l ’application. Vue : présentation de l ’état du modèle (généralement à un utilisateur) Contrôleur : interface d ’action sur le modèle (par exemple, pour les mises à jour) L ’interface utilisateur, composée de vues, intéragit avec le contrôleur.

Le Pattern MVC Une « boucle de rétroaction »... Utilisateur Voit Utilise Vue(s) Contrôleur Manipule Rafraîchit Modèle Application

Servlets/JSP « Model2 » (2) action sur le modèle (1) requête N Navigateur HTML Servlet Contrôleur Modèle (beans, BD…) (3) forward (4) rafraîchir vue (5) réponse JSP Vue

Exemple : Servlet Contrôleur public class ControllerServlet extends HttpServlet { public void doGet (HttpServletRequest req, HttpServletResponse res) throws ServletException,IOException { String action = req.getParameter("action"); if("consulter".equals(action)) { String nom = req.getParameter("nom"); if(nom == null) forward("error.jsp", req, res); else { String tel = annuaire.chercherContact(nom); req.setAttribute("tel", tel); forward("contact.jsp", req, res); } } else if ("modifier".equals(action)) { // ...

Struts Servlet Contrôleur générique org.apache.struts.action.ActionServlet servlet-mapping sur « *.do » Interaction avec le modèle ActionForm et Action à implémenter WEB-INF/struts-config.xml Association URL(.do)/ActionForm/Action/Vue JSP Taglibs utilitaires struts-html, struts-logic, struts-bean

Struts : architecture (1) ActionServlet ActionForm Appel java Contrôleur Accède à (2) Action JSP forward Modèle Vue

ActionForm Java Bean getter et setter pour chaque champ de formulaire gestion d ’erreur (validate() pour validation de formulaire) associé à une URL « .do », une Action et une vue JSP dans struts-config.xml

Action Classe qui intéragit avec l ’objet métier et l ’ActionForm Etend org.apache.struts.action.Action public ActionForward perform( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) Lien avec l ’ActionForm, l ’URL et les vues (forward) dans struts-config.xml ActionMapping pour accéder à l ’information, et pour le forward(vue)

struts-config.xml <form-beans> <form-bean name=«myForm » type=« mypackage.MyForm »/> </form-beans> <!-- association URL.do/ActionForm/Action/vue -- > <action-mappings> <action path=«/myform » type=«mypackage.MyAction » name=«myForm » input=«/saisie.jsp » scope=«request »> <forward name="success" path="/ok.jsp"/> <forward name="failure" path="/erreur.jsp"/> </action> </action-mappings> Implém. de l ’ActionForm Signifie «/myform.do» Implém. de l ’Action JSP si erreur saisie

Formulaire de saisie <!-- saisie.jsp --> <%@ taglib uri=« /WEB-INF/struts-html.tld » prefix=« html »> <!-- traitements erreur (attribut «input» de «action-mapping») --> <html:errors/> <!-- formulaire utilisant la taglib struts-html --> <!-- «myform»(.do) = attribut «path» de «action-mapping» --> <html:form action=« myform.do »> Nom : <html:text property=« nom »/> <html:submit /> </html:form>

ActionForm package mypackage; public final class MyForm extends ActionForm { private String nom_ = null; public void setNom(String n) { nom_ = n; } public String getNom() { return nom_; } }

Action package mypackage; public final class MyAction extends Action { public ActionForward perform( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { MyForm f = (MyForm)form; String nom = f.getNom(); // … traitements … request.setAttribute(« leNom », nom); return mapping.findForward(« success »); }

Vue JSP <!-- ok.jsp --> <%@ taglib uri=« /WEB-INF/struts-logic.tld » prefix=«logic»> <logic:present name=« leNom » scope=« request »> Bonjour <logic:write name=« leNom » scope=« request »/> </logic:present>

Struts : installer Appli d ’exemple : struts-blank.war Déployer dans webapps Modifier la configuration, et partir de l ’exemple Documentation : struts-documentation.war