Dedicatoria
Que menos que acordarme de mis queridos padres, que junto a mi hermana me han apoya
do en todo lo que me he propuesto hacer. Por ello el esfuerzo que he empeado en llevar a
cabo este proyecto as como el resultado se lo dedico a ellos desde mi ms sincero
agradecimiento.
Gracias papis.
Agradecimientos
Gracias a todos los compaeros de la EUPMT con los que he coincidido durante la carrera
y que me han echado una mano en la consecucin de sta. Ester, Isa, Vernica, Azahara,
Toni Sabat, Xavi, Edu Gonzlez, Toni Montero, Edu, Marc, Aitor, Jordi, Marc Behere,
Lidia, Sergio Martin, Nachete, Javier Gmez, Pere Manent y un gran etc de los que no
quisiera olvidarme.
Resumen
La utilizacin de las nuevas tecnologas para la implementacin de nuevos proyectos, es la
base para el avance tecnolgico de la sociedad actual. Por ello, a continuacin se llevar a
cabo el desarrollo de una tienda virtual utilizando una tecnologa relativamente joven y que
se esta implantando con fuerza en el sector del desarrollo Web. La aplicacin de patrones
de diseo en las implementaciones software, se ha convertido en la base para un diseo
inteligente, eficaz y mantenible. JavaServer Faces (JSF) busca la normalizacin y
estandarizacin del desarrollo Web, entre otras cosas implementa el patrn Modelo-VistaControlador (MVC) el cual permite diferenciar entre la lgica de presentacin, lgica de
control y lgica del negocio. Para llevar a cabo este proyecto, se utilizar el framework
basado en la tecnologa JSF llamado Visual Web JavaServer Faces (Visual Web JSF)
facilitado por la plataforma Netbeans.org. Adems, para implementar la persistencia se
utilizar el framework IBATIS facilitado por Apache Software Fundation, de ste ltimo
comentar que se trata de un mapeador de objetos de cdigo abierto basado en capas y que
se localiza entre la lgica del negocio y la persistencia de los datos. El framework Visual
Web JSF implementa su propio patrn Data Access Object (DAO) para la persistencia,
facilitando diferentes herramientas y tcnicas, pero por motivos meramente tcnicos y de
valor aadido se ha optado por utilizar IBATIS en la implementacin de este patrn, que
junto a los patrones MVC y patrn capas permitirn llevar a cabo funcionalidades como el
pago electrnico o la encriptacin de datos.
Resum
La utilitzaci de les noves tecnologies per a la implementaci de nous projectes, s la base
per a l' aven tecnolgic de la societat actual. Per aix, a continuaci es portar a terme el
desenvolupament d' una botiga virtual utilitzant una tecnologia relativament jove i que s'
est implantant amb fora en el sector del desenvolupament Web. L' aplicaci de patrons
de disseny en les implementacions programari, s' ha convertit en la base per a un disseny
intelligent, efica i mantenible. JavaServer Faces (JSF) busca la normalitzaci i
estandarditzaci del desenvolupament Web, entre altres coses implementa el patr ModelVista-Controlador (MVC) el qual permet diferenciar entre la lgica de presentaci, lgica
de control i lgica del negoci. Per a portar a terme aquest projecte, s' utilitzar el
framework basat en la tecnologia JSF cridat Visual Web JavaServer Faces (Visual Web
JSF) facilitat per la plataforma Netbeans.org. A ms, per a implementar la persistncia s'
utilitzar el framework IBATIS facilitat per Apatxe Programari Fundation, d' aquest ltim
comentar que es tracta d' un mapejador d' objectes de codi obert basat en capes i que es
localitza entre la lgica del negoci i la persistncia de les dades. El framework Visual Web
JSF implementa el seu propi patr Data Access Object (DAO) per a la persistncia,
facilitant diferents eines i tcniques, per per motius merament tcnics i de valor afegit s'
ha optat per utilitzar IBATIS en la implementaci d' aquest patr, que al costat dels patrons
MVC i patr capes permetran portar a terme funcionalitats com el pagament electrnic o
xifrat de dades.
Abstract
The use of new technologies for the implementation of new projects is the basis for
societys technological development. Bearing this in mind, this project presents the
development of a virtual store using a relatively recent technology which is being widely
implemented in the field of web development. The application of design patterns in
software implementations has become the starting point for an intelligent, effective and
maintainable design. JavaServer Phases, which intends to normalize and standardize web
development, among other things, implements the Model-Vista-Controller (MVC) pattern,
which allows to distinguish between presentation logics, logic control logics and business
logics.
To carry out the present work, JSF technology-based framework, called Visual Web Java
Server Phases (Visual Web JSF) provided by the Netbeans.org platform, has been used.
Furthermore, in order to implement persistence, IBATIS framework provided by Apache
Software Fundation has been used. It is a layer-based open-source mapper that is located
between the business logics and data persistence. Visual Web JSF framework implements
its own Data Access Object DAO pattern for persistence, providing different tools and
techniques. However, due to technical and added-value reasons, IBATIS has been chosen
for pattern implementation, which together with MVC pattern and layer patterns will allow
functionalities such as electronic payment or data encryption.
ndice de captulos
1.
Introduccin ............................................................................................................. 1.
2.
Objetivos.................................................................................................................. 3.
3.
4.
2.1.
Objetivos generales.......................................................................................... 3.
2.2.
2.3.
3.2.
4.1.1.
4.1.2.
4.1.3.
4.1.4.
4.1.5.
4.1.6.
4.1.7.
4.1.8.
4.1.9.
4.1.10.
4.2.
5.
6.
7.
5.2.
5.3.
6.2.
6.2.1.
6.2.2.
6.2.3.
ndice
II
7.1.
7.1.1.
7.1.2.
7.1.3.
7.1.4.
7.1.5.
7.1.6.
7.2.
7.3.
7.3.1.
7.3.2.
7.4.
7.5.
7.6.
8.
8.2.
8.3.
8.4.
8.5.
8.6.
8.7.
8.8.
9.
10.
11.
12.
13.
Bibliografa....................................................................................................... 107.
14.
15.
ndice de figuras
Figura 1. www.fnac.es. ................................................................................................ 7.
Figura 2. www.elcorteingles.es. .................................................................................. 8.
Figura 3. www.vinosonline.es. .................................................................................... 8.
Figura 4. Microsoft .net. ............................................................................................ 12.
Figura 5. Java............................................................................................................. 12.
Figura 6. JavaServer Faces. ....................................................................................... 14.
Figura 7. JavaServer Faces-MVC.............................................................................. 16.
Figura 8. Faces-config.xml. ....................................................................................... 16.
Figura 9. Componente de la vista. ............................................................................. 16.
Figura 10. Ejemplo de accin .................................................................................... 17.
Figura 11. Regla de navegacin. ............................................................................... 17.
Figura 12. Declaracin de un bean. ........................................................................... 18.
Figura 13. Peticin de atributo de objeto del modelo. ............................................... 18.
Figura 14. Validacin y conversin........................................................................... 19.
Figura 15. Logotipo iBATIS. .................................................................................... 22.
Figura 16. Proceso software. ..................................................................................... 23.
Figura 17. Costes-Hardware. ..................................................................................... 28.
Figura 18. Diagrama de casos de uso. ....................................................................... 35.
Figura 19. Diseo de paquetes de la aplicacin. ....................................................... 53.
Figura 20. Diseo Dominio. ...................................................................................... 55.
Figura 21. Clase Cesta. .............................................................................................. 56.
Figura 22. Clase LineaVenta. .................................................................................... 57.
Figura 23. Clase Producto. ........................................................................................ 58.
Figura 24. Clase Categora. ....................................................................................... 59.
Figura 25. Clase SubCategora. ................................................................................. 60.
Figura 26. Clase Usuario. .......................................................................................... 61.
Figura 27. Diseo Persistencia. ................................................................................. 62.
Figura 28. Maquina de estados Cesta ........................................................................ 64.
Figura 29. Diagrama de clases de la maquina de estados......................................... 65.
Figura 30. Patrn fachada. ......................................................................................... 66.
Figura 31. Diseo de la base de datos. ...................................................................... 67.
IV ndice
ndice de tablas
Tabla 1. Resultados del estudio. .................................................................................. 9.
Tabla 2. Clculo de costes. ........................................................................................ 29.
VI ndice