Maven Multiproyecto Struts2 Spring Hibernate
-
Upload
edumarvega -
Category
Documents
-
view
250 -
download
0
Transcript of Maven Multiproyecto Struts2 Spring Hibernate
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
1/29
Maven multripoyecto para Struts2,Spring y Hibernate
Para generar esta estructura de proyecto, parto del supuesto que tiene configurado unrepositorio maven local, eclipse ,un servidor de base de datos MySql y un servidor JBoss oTomcat.
Con maven se genera una estructura de multiporyectos un pom.xml padre y los n proyectosi!os con sus respectivos pom.xml que generaran .!ar o ."ar.
Se pretende crear un temple con proyecto padre que contenga dos i!os un proyectobac#end y otro frontend.$n el bac#end se alo!aran las clases entidades del proyecto y en elfrontend los action de struts%, beans con spring , y la conexion a la bd y mapeo conibernate.
&.Crear dos carpetas una llamada multiproyecto y otra "or#space'maven(en estaimportaremos los proyectos creados con maven y son los que se traba!aran desde eclipse)*esde consola nos situamos en la carpeta multiproyecto+
cd /home/mvega/multiproyecto
%.*entro de multiproyecto correr el siguiente comando maven para crear el proyecto padre+
mvn archetype:create -DgroupId=com.template.main -DartifactId=template-main
$l resultado es el siguiente+
3.
3.
3.
3.
3.
3.
*entro de e!. ome mvega multiproyecto template-main , borrar la carpeta src, y en elarc ivo pom.xml modificar jar por pom
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
2/29
./ngresar al proyecto padre con
cd /home/mvega/multiproyecto/template-main
0.*entro del proyecto padre correr el mando maven para generar el proyecto bac#end+
mvn archetype:create -DgroupId=com.template.backend -DartifactId=template-backend
1.*entro del proyecto padre correr el mando maven para generar el proyecto frontend+
mvn archetype:create -DgroupId=com.template.frontend -DartifactId=template-frontend
2.*entro del proyecto template-frontend agrega la siguiente linea al pom.xml , ar
quedando lo siguiente+
com.template.frontend template-frontend
war
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
3/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
4/29
$n este punto se tiene un proyecto que genera un ."ar, este caso seria el proyecto template-frontend con dependencia de .!ar generado por el proyecto template-bac#end
&&.8acer el proyecto template-frontend de tipo eclipse, importandolos con comando maven+
mvn eclip!e:eclip!e
9na ve: corrido ese comando dentro de eclipse se creara una variable de entorno a maven ()*+#, que ace referencia e!. /home/mvega/.m)/repo!itory/
&%. 8acer el proyecto template-frontend dinamico "eb para eclipse
mvn eclip!e:eclip!e -D tpver!ion= .
&;./ngresar a $clipse e importar el proyecto recien creado con maven
&ile->%e ,royect->Import...Seleccionar la opcion0eneral->#'i!ting ,roject into "ork!pace
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
5/29
*ebemos elegir el proyecto template-main que esta dentro del "or#space'maven para estee!emplo, se veran dentro de la vista de pac#ege del eclipse los proyectos template-backend y template-frontend con sus respectivos arc ivos pom.xml
& .8acer proyecto dinamico para Tomcat o Jboss sobre el proyecto template-frotend acerclic# con el boton derec o de mouse elegir ,ropertie!->,roject &acet! presionar el boton
1pply y k
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
6/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
7/29
8asta aqui se tiene multiproyectos con maven, un proyecto padre como template-main y dosproyectos i!os template-bac#end y template-frontend
Continuando con la creacion de una aplicacion "eb multiproyecto con struts%,spring yibernate, configuraremos las dependencias y arc ivos de los respectivos frame"or#s.
&0. $n el arc ivo pom.xml del proyecto template-frontend vamos a colocar las dependenciasde struts%,spring y ibernate.
Struts%...
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
8/29
Spring...
org.(i$ernate
(i$ernate 3.'.4.ga
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
9/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
10/29
//constructor # getters and setters
&3.=eneramos el !ar de template-bac#end para ser utili:ado por el proyecto template-frontend, en consola ingresamos los siguientes comandos+
cd CDomeCmvegaCEorkspace7mavenCtemplate-backend
mvn clean install -#maven test skip>true
&4.*esde consola ingresamos al proyecto template-frotend, y corremos el siguientecomando+
mvn eclipse eclipse
$sto refrescara las referencias de dependencia entre el template-frontend y el template-bac#end y las dependencias de struts%,spring y ibernate configuradas en el pom.xml, si no
tenemos los !ar automaticamente maven los ba!ara al repositorio local de la pc.
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
11/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
12/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
13/29
6suario#(% Gava
package com.template.frontend.dao9
/;; ; @author mvega
; ;/public interface suario@A =
public boolean validar suarioFString nom$reGString pass ord 9
UsuarioDAOImpl.java
package com.template.frontend.dao.impl9
import org.(i$ernate. riteria9import org.(i$ernate.criterion.Jestrictions9import org.springframe or%.orm.(i$ernate3.support.Hi$ernate@aoSupport9
import com.template.$ac%end.modelo. suario9import com.template.frontend.dao. suario@A 9
public class suario@A Impl e ten!s Hi$ernate@aoSupport implements suario@A =
public boolean validar suarioFString nom$reGString pass ord =boolean usuarioKalido false 9
riteria criteria this .getSessionF .create riteriaF suario. class 9criteria.addFJestrictions. e, FDnom$reD G nom$re 9criteria.addFJestrictions. e, FDpass ordD G pass ord 9suario usuario F suario criteria.uni ueJesultF 9
if Fusuario" null =usuarioKalido true 9
return usuarioKalido9
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
14/29
%%.Procedemos a crear la capa BA que sera inyectada al action que recibe los datos delformulario y es un intermediario en el action y la capa dao.9suarioBA.!ava y 9suarioBA/mpl.!ava
6suario)% Gava
package com.template.frontend.$o9
/;; ; @author mvega ; ;/public interface suario7 =
public boolean validar suarioFString nom$reG String pass ord 9
Usuario"OImpl.java
package com.template.frontend.$o.impl9
import com.template.frontend.$o. suario7 9import com.template.frontend.dao. suario@A 9
/;; ; @author mvega ; ;/public class suario7 Impl implements suario7 =
private suario@A usuario@A 9
public boolean validar suarioFString nom$reG String pass ord =
boolean usuarioKalido this . usuario@A .validar suarioFnom$reGpass ord 9
return usuarioKalido9
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
15/29
public voi! set suario@A F suario@A usuario@A =this . usuario@A usuario@A 9
%;.$n el proyecto template-frontend dentro de "ebapp creamos una estructura de carpetaspara alo!ar las paginas login.!sp, login'o#.!sp y login'error.!ps, quedando esto de la siguientemanera+
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
16/29
login Gsp
ogin al sistema con struts'G spring # (i$ernate
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
17/29
login7ok Gsp
ogin al sistema con struts'G spring # (i$ernate
7ienvenido """
login7error Gsp
ogin al sistema con struts'G spring # (i$ernate
Cl usuario o pass ord ingresado es invalidoG o no esta registrado en elsistema"""
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
18/29
% .Creamos el arc ivo struts.xml que contiene la deficinion de action y navegabilidad de laspaginas.*ic o arc ivo lo colocamos dentro de src main resources
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
19/29
struts xml
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
20/29
database properties
&d$c.driver lassName com.m#s l.&d$c.@river&d$c.url &d$c Em#s lE//local(ostE3302/template&d$c.username root&d$c.pass ord root
%1.Crearemos los arc ivos de configuracion de spring que crearan los bean de conexion a labase de datos action bo y dao.
Se crea la carpeta spring dentro de ;+)- 3FCconfCspring en el se alo!aran los arc ivosaction-spring xmlbo-spring xmldao-spring xmldata-source xmlDibernate-session-factory xml
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
21/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
22/29
data-source xml
C7-IN /conf/data$ase/properties/data$ase.properties
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
23/29
Dibernate-session-factory xml
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
24/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
25/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
26/29
%3.Por ultimo vamos a configurar el servlet de struts y el contecxto de spring dentro delarc ivo Eeb xml
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
27/29
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
28/29
Pantalla de login
Pantalla de bienvenida
-
8/10/2019 Maven Multiproyecto Struts2 Spring Hibernate
29/29