Estructurant les aplicacions MVC JSTL Struts Toni Navarrete Enginyeria del Software II – UPF 2007
JSTL: JavaServer Pages Standard Tag Library És un conjunt d’etiquetes que permet escriure JSPs sense codi Java Evita utilitzar <% ... %> És més fàcil editar la pàgina per un dissenyador
JSTL: exemples Amb JSP: Amb JSTL: <% =session.getAttribute(“usuari").getNom()%> Amb JSTL: <c:out value="${sessionScope.usuari.nom}"/>
JSTL: exemples Amb JSP: Amb JSTL: <% Grup g=(Grup)session.getAttribute(“grup"); Iterator it = g.getPersones.iterator(); while (it.hasNext()) { Persona persona = (Persona)it.next(); ... } %> Amb JSTL: <c:forEach var=“persona“ items="${sessionScope.grup.persones}"> ... </c:forEach>
JSTL: 5 llibreries estàndard d’etiquetes Core: http://java.sun.com/jsp/jstl/core XML: http://java.sun.com/jsp/jstl/xml Internationalization: http://java.sun.com/jsp/jstl/fmt SQL: http://java.sun.com/jsp/jstl/sql Functions: http://java.sun.com/jsp/jstl/functions
Struts Struts és un framework per desenvolupar aplicacions web basades en el patró MVC d’una forma més estructurada (més ràpida i més fàcil de mantenir) Versions 2.0 disponible, nosaltres usarem 1.2.9 que és la que suporta Netbeans
Struts: estructura general Struts té un servlet controlador org.apache.struts.action.ActionServlet El controlador està configurat al fitxer struts-config.xml Especifica la classe Action (*) que es crida per a cada operació Assigna uns noms lògics a les vistes per desaclopar les accions de les URL de les vistes Defineix la informació que li arriba a l’acció (form beans) (*) Per a cada operació que ha de processar el controlador, s’implementa una subclasse de la classe org.apache.struts.action.Action, i en concret el seu mètode execute (segueix el patró Command que vam veure a 2.2) Les classes Action fan de pont entre el controlador i el model
Struts: exemples Exemple 1 Exemple 2 Exemple 3 Servlet controlador Fitxer de configuració Mappeig d’accions Exemple 2 Forwards Actions Exemple 3 Form beans Escriure els atributs d’un bean
Struts: exemples Exemple 4 Exemple 5 Formularis struts Pas de beans en el request Exemple 5 Fitxers de propietats Internacionalització (I18N)
Referències JSTL: Struts: http://java.sun.com/products/jsp/jstl/ http://struts.apache.org/ http://courses.coreservlets.com/Course-Materials/struts.html Llibre en castellà: Chuck Cavaness: Jakarta Struts. Anaya Multimedia O’Reilly