logo

Formations

Testez vos connaissances

Articles

Plus d'info

Introduction à Jakarta Struts

Struts, pourquoi faire ?
Struts, le framework MVC pour les applications web le plus populaire.
Les avantages de Struts:
  • Validation automatique des formulaires
  • Plus de code Java dans les JSP grace aux TagLibs
Struts, qu'est-ce que c'est ?
Jakarta Struts, ou plus simplement Struts, est un framework MVC pour le monde des Servlet/JSP. Plus précisement, c'est une implémentation d'une variation du design pattern Model View Controller (MVC), adaptée pour le web.
Nous allons expliquer ce design pattern et montrer quelques utilisations.

Le Design Pattern MVC
Au début du web, la seule manière de construire des pages dynamiques était d'utiliser le standard CGI. Puis vinrent les servlets, plus rapides, plus puissantes et surtout plus extensibles.
Mais écrire du HTML à coup de println("..."); n'est pas une sinécure, et quand apparurent les JSP, qui permettent d'inverser l'écriture et de donner la priorité au HTML tout en conservant la flexibilité des servlets. Tout le monde était heureux.
Mais les JSP ne résolvaient pas le problème de controle de flux et d'organisation des applications web.
Bien sur, beaucoup de monde a eu l'idée d'utiliser les JSP ET les servlets en même temps, laissant aux servlets le control du flux et aux JSP le control de l'affichage. L'utilisation combinée de ces deux technologies fut nommé Model 2 (probablement par opposition au Model 1, l'utilisation des JSP seules). Le Model 2 étant très proche du design pattern MVC (utilisé pour les IHM classiques), Model 2 et MVC devinrent synonyme pour la communauté des développeurs Java.

Dans le desgin pattern MVC, le déroullement de l'application est assuré par un controleur centralisé. Le controleur délegue les requetes (HTTP ou autres) au gestionnaire approprié. Les gestionnaires sont liés à un Modèle, et chaque controleur agit en tant qu'adapteur entre la requete et le Modèle. Le Modèle représente ou encapsule la logique applicative ou l'état de l'application. Après le travail du gestionnaire, le controleur reprend généralement la main pour appeler la Vue adéquate.
Exemples


References