SlideShare una empresa de Scribd logo
1 de 33
Arquitectura Java Web
Ing. José Luis BugarinIng. José Luis Bugarin
jbugarin@consultorjava.comjbugarin@consultorjava.com
1
Objetivos
Al final de la sesión usted debe ser capaz de:
 Conocer el modelo MVC utilizado en JAVA.
 Identificar los Frameworks utilizados para
el modelo MVC.
2
MODELO VISTA CONTROLADOR
- MVC
 Controlador: Administra el sistema de
navegación.
 Modelo: Almacena un conjunto de datos.
 Vista: Presenta los datos que se
encuentran almacenados en un sistema
de bases de datos (Modelo).
3
GRAFICA DEL MODELO VISTA
CONTROLADOR
4
MODELO VISTA CONTROLADOR
USANDO FRAMEWORKS
5
Introducción a la capa
de presentación
Ing. José Luis BugarinIng. José Luis Bugarin
jbugarin@consultorjava.comjbugarin@consultorjava.com
6
Objetivos
Al final de la sesión usted debe ser capaz de:
Conocer los fundamentos del protocolo
http
Identificar los lenguajes que se usan en la
capa de presentación.
Conocer el Framework de la capa de
presentación
Identificar herramientas para la
presentación
7
HTTP RESPONSE REQUEST
MODEL
8
FUNCIONAMIENTO DE HTTP
Http define la manera en que los
desarrolladores web interactúan con
servidores web.
Http Utiliza TCP/IP, el protocolo en red de
internet para transferir mensajes entre
diversos ordenadores repartidos por el
mundo.
Esto permite que el usuario pueda
comunicarse con cualquier servidor Web
desde distintos navegadores Web y
esperar una respuesta. 9
FUNCIONAMIENTO DE HTTP
 Existen dos tipos comunes de solicitudes
HTTP: GET y POST.
 La solicitud GET añadira un formulario de
datos a la direccion solicitada y lo enviara
en un paquete.
 La solicitud POST enviara primero un
paquete conteniendo la informacion del
encabezado y despues otro paquete
conteniendo el formulario de datos. 10
FUNCIONAMIENTO DE HTTP
 ¿Que tipo de solicitud debo de usar?
 Debes utilizar POST para modificar un
recurso en el servidor.
 Debes utilizar GET simplemente para
obtener informacion del servidor
 Los anteriores puntos solo son
recomendaciones, la realidad nos indica
que no siempre es asi.
11
RESPUESTAS COMUNES DE
HTTP
12
Lenguajes utilizados en la capa de
presentación
 HTML
 JavaScript
 Hojas de estilo CSS
 JSP (J2EE)
13
¿QUE ES UNA PAGINA JSP?
 Una pagina JSP es, sencillamente, una
pagina HTML que contiene instrucciones
especiales para ejecutar código java por
toda la pagina.
 El contenedor web J2EE es el encargado
de administrar las paginas JSP.
14
PASOS DEL
PROCESAMIENTO JSP
N a v e g a d o r
W e b
¿ H a c a m b ia d o
la p a g in a ?
C o m p ila r S e r v le t
G e n e r a r C ó d ig o
F u e n t e
P r o c e s a r S o lic it u d
I n ic ia r S e r v le t
S I
N O
S o lic it u d
H T T P
15
ESTRUCTURA DE UNA
PAGINA JSP
 Soporta HTML.
 Los JSP consisten en:
Directivas
Declaraciones
Expresiones
scriptlets
16
ESTRUCTURA JSP
 Directivas
 Declaraciones
 Scriptlet
 Adicionalmente el propio código HTML
17
FRAMEWORK STRUTS
18
FUNCIONAMIENTO DE STRUTS
19
COMO INICIAR CON STRUTS
 Para iniciar con struts necesitamos lo
siguiente:
Action Form
Action
Struts-config.xml
Paginas JSP
20
Verificar que exista la configuración
de struts en el gestor de
despliegue web.xml
21
Caso Practico – Navegación con
Struts
22
Formulario de Datos
 Formulario en HTML / JSP
23
Comenzando con STRUTS
 Por cada formulario Web, se necesita escribir el
respectivo ActionForm de Struts.
 Un ActionForm es un JavaBean que extiende de
org.apache.struts.action.ActionForm, este
mantiene el estado de sesión para la aplicación
Web y el objeto ActionForm se rellena
automáticamente en el servidor con los datos
introducidos en un formulario en la capa de
presentación que interactúa con los usuarios
finales.
24
Creación de LoginForm para
nuestro Formulario Web
 Formulario:
25
Creacion del Action en Struts
 Ahora vamos a visualizar la clase Action
correspondiente para esta pequeña
funcionalidad implementada en Struts.
26
Captura de imagen de un Action
de Struts
27
VALIDACIONES CON STRUTS
• Struts Framework proporciona la funcionalidad para
validar los datos del formulario
• Se puede utilizar para validar los datos en el
navegador de los usuarios, así como en el lado del
servidor.
• El Framework Validator fue desarrollado por David
Winterfeldt como un plug in de terceros para Struts.
Ahora, el framework Validator es una parte del
proyecto de Jakarta Commons y puede ser utilizado
con o sin Struts. El framework Validator viene
integrado con el framework Struts y puede ser
utilizado sin realizar ninguna configuración adicional. 28
VALIDACIONES CON STRUTS
• Struts para usar las validaciones utiliza
dos archivos con extensión .xml
• Estos archivos son: validator-rules.xml y
validation.xml
• El validator-rules.xml define las rutinas
de validación estándar, estos son
reutilizables y utilizados en
validation.xml
29
STRUTS TAGS LIBRARY
 El framework Struts proporciona un
conjunto de librerías de etiquetas, que
asisten en la tarea de la creación de la
vista de MVC para evitar incluir código
Java en los JSPs, entre ellas:
 Bean Tags
 HTML Tags
 Logic Tags
30
HTML TAGS
 Estas etiquetas son principalmente usadas para:
 Crear formularios de entrada de datos y
 Otras utilidades para visualizar interfaces basados en
HTML.
 Algunas de las acciones más útiles son:
 base  genera un elemento HTML <base>
 errors  condicionalmente visualiza un conjunto
acumulado de mensajes de error
 form  define un formulario de entrada
 text  visualiza un campo de entrada de tipo texto
 messages  condicionalmente visualiza un conjunto
de mensajes acumulados
 submit  visualiza un botón de entrega
 Etc.
31
Logic Tags
 Usadas para:
 Iterar sobre colecciones
 Generación condicional de salida, y
 Flujo de aplicación
 Algunas de las acciones más útiles son:
 present  genera el contenido de marcado dentro de
esta etiqueta si el valor indicado es encontrado en
esta petición
 notPresent  lo opuesto a present
 iterate  repite el contenido anidado dentro de esta
etiqueta al iterar sobre una colección
 forward  transfiere control a la página especificada
por la entrada ActionForward.
 Etc. 32
Bean Tags
 Usadas principalmente para:
Escribir por pantalla los valores de los request
en los jsp.
Definir atributos en el contexto de la pagina
en tiempo de compilación.
 Algunas de las mas usadas son:
Define: define un atributo en el contexto de la
petición en tiempo de compilación.
Write: muestra por pantalla un valor de un
objeto que se encuentre en el contexto de la
petición. 33

Más contenido relacionado

La actualidad más candente

Sesion 3. desarrollo de aplicaciones jee
Sesion 3. desarrollo de aplicaciones jeeSesion 3. desarrollo de aplicaciones jee
Sesion 3. desarrollo de aplicaciones jeeHéctor Santos
 
Tutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosTutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosNorman Enmanuel
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EECarlos Gavidia-Calderon
 
introduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidintroduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidJose Luis Bugarin Peche
 
Estudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAEstudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAHelmilpa
 
Aplicaciones empresariales Java EE en la nube
Aplicaciones empresariales Java EE en la nubeAplicaciones empresariales Java EE en la nube
Aplicaciones empresariales Java EE en la nubeFernando Montaño
 
Seminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
Seminario de programación Java, con Apache Maven, J2EE, JPA, PrimefacesSeminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
Seminario de programación Java, con Apache Maven, J2EE, JPA, PrimefacesAlejandro Bolaños Ussa
 
Entendiendo el .NET Framework
Entendiendo el .NET FrameworkEntendiendo el .NET Framework
Entendiendo el .NET FrameworkSorey García
 
Presentacion tecnica microsoft.net
Presentacion tecnica microsoft.netPresentacion tecnica microsoft.net
Presentacion tecnica microsoft.netRulo Rosaz
 
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Rodolfo Finochietti
 

La actualidad más candente (20)

Sesion 3. desarrollo de aplicaciones jee
Sesion 3. desarrollo de aplicaciones jeeSesion 3. desarrollo de aplicaciones jee
Sesion 3. desarrollo de aplicaciones jee
 
Tutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasosTutorial javafx-primeros-pasos
Tutorial javafx-primeros-pasos
 
Modulo 1 java ee platform
Modulo 1   java ee platformModulo 1   java ee platform
Modulo 1 java ee platform
 
Arquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EEArquitectura y diseño de aplicaciones Java EE
Arquitectura y diseño de aplicaciones Java EE
 
introduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones androidintroduccion al desarrollo de aplicaciones android
introduccion al desarrollo de aplicaciones android
 
Introducción a Java FX
Introducción a Java FXIntroducción a Java FX
Introducción a Java FX
 
Estudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVAEstudio comparativo de PHP, ASP.NET Y JAVA
Estudio comparativo de PHP, ASP.NET Y JAVA
 
Aplicaciones empresariales Java EE en la nube
Aplicaciones empresariales Java EE en la nubeAplicaciones empresariales Java EE en la nube
Aplicaciones empresariales Java EE en la nube
 
Seminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
Seminario de programación Java, con Apache Maven, J2EE, JPA, PrimefacesSeminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
Seminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
 
Frameworks J2EE
Frameworks J2EEFrameworks J2EE
Frameworks J2EE
 
Frameworks Java
Frameworks JavaFrameworks Java
Frameworks Java
 
Java script
Java scriptJava script
Java script
 
Entendiendo el .NET Framework
Entendiendo el .NET FrameworkEntendiendo el .NET Framework
Entendiendo el .NET Framework
 
RIA con JavaFX
RIA con JavaFXRIA con JavaFX
RIA con JavaFX
 
spring
springspring
spring
 
Presentacion tecnica microsoft.net
Presentacion tecnica microsoft.netPresentacion tecnica microsoft.net
Presentacion tecnica microsoft.net
 
Tecnologia ASP.net
Tecnologia ASP.netTecnologia ASP.net
Tecnologia ASP.net
 
Metadata api en apex
Metadata api en apexMetadata api en apex
Metadata api en apex
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4
Nuevas características para Desarrollo Web en Visual Studio 2012 y ASP.NET MVC 4
 

Destacado

Potential Utility Of Plasma Fatty Acid[1]
Potential Utility Of Plasma Fatty Acid[1]Potential Utility Of Plasma Fatty Acid[1]
Potential Utility Of Plasma Fatty Acid[1]Bassel Ericsoussi, MD
 
Sectores economicos
Sectores economicosSectores economicos
Sectores economicosISENIA06
 
La Rambla de Terrassa pel Transport Públic
La Rambla de Terrassa pel Transport PúblicLa Rambla de Terrassa pel Transport Públic
La Rambla de Terrassa pel Transport PúblicAMTU
 
La fruta, las verduras, la comida
La fruta, las verduras, la comidaLa fruta, las verduras, la comida
La fruta, las verduras, la comidaolssonanna81
 
Modos de adquirir la propiedad
Modos de adquirir la propiedadModos de adquirir la propiedad
Modos de adquirir la propiedadAmalWai
 
Estadística margareth gayoso
Estadística margareth gayosoEstadística margareth gayoso
Estadística margareth gayosoMargareth Gayoso
 
GR4 Fitness
GR4 FitnessGR4 Fitness
GR4 FitnessAKiDORME
 
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...Editorial CEP
 
Inauguración del museo "Hermanos Emiliozzi"
Inauguración del museo "Hermanos Emiliozzi"Inauguración del museo "Hermanos Emiliozzi"
Inauguración del museo "Hermanos Emiliozzi"LeonelBlanco07
 

Destacado (20)

Spring - Inyección de Dependencias
Spring - Inyección de DependenciasSpring - Inyección de Dependencias
Spring - Inyección de Dependencias
 
Curso JSF - Conceptos Basicos
Curso JSF - Conceptos BasicosCurso JSF - Conceptos Basicos
Curso JSF - Conceptos Basicos
 
Curso Java Avanzado 5 Ejb
Curso Java Avanzado   5 EjbCurso Java Avanzado   5 Ejb
Curso Java Avanzado 5 Ejb
 
Potential Utility Of Plasma Fatty Acid[1]
Potential Utility Of Plasma Fatty Acid[1]Potential Utility Of Plasma Fatty Acid[1]
Potential Utility Of Plasma Fatty Acid[1]
 
cv
cvcv
cv
 
Thesis
ThesisThesis
Thesis
 
Itelco Group Of Companies
Itelco Group Of CompaniesItelco Group Of Companies
Itelco Group Of Companies
 
Sectores economicos
Sectores economicosSectores economicos
Sectores economicos
 
La Rambla de Terrassa pel Transport Públic
La Rambla de Terrassa pel Transport PúblicLa Rambla de Terrassa pel Transport Públic
La Rambla de Terrassa pel Transport Públic
 
La fruta, las verduras, la comida
La fruta, las verduras, la comidaLa fruta, las verduras, la comida
La fruta, las verduras, la comida
 
Modos de adquirir la propiedad
Modos de adquirir la propiedadModos de adquirir la propiedad
Modos de adquirir la propiedad
 
Estadística margareth gayoso
Estadística margareth gayosoEstadística margareth gayoso
Estadística margareth gayoso
 
GR4 Fitness
GR4 FitnessGR4 Fitness
GR4 Fitness
 
Marketing PolíTico Viral
Marketing PolíTico ViralMarketing PolíTico Viral
Marketing PolíTico Viral
 
Máster en Asesoría Jurídica y Fiscal de Empresas
Máster en Asesoría Jurídica y Fiscal de EmpresasMáster en Asesoría Jurídica y Fiscal de Empresas
Máster en Asesoría Jurídica y Fiscal de Empresas
 
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...
Prevención de Riesgos Laborales (FCOS01). Formación complementaria. Certifica...
 
Py Mag 2007 10
Py Mag 2007 10Py Mag 2007 10
Py Mag 2007 10
 
Tics en educacion_infantil
Tics en educacion_infantilTics en educacion_infantil
Tics en educacion_infantil
 
Inauguración del museo "Hermanos Emiliozzi"
Inauguración del museo "Hermanos Emiliozzi"Inauguración del museo "Hermanos Emiliozzi"
Inauguración del museo "Hermanos Emiliozzi"
 
Passive voice
Passive voicePassive voice
Passive voice
 

Similar a Arquitectura java web

5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-20065. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006Samuel Marrero
 
Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NETwilliamsm
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)Eudris Cabrera
 
ASP.NET MVC (2011)
ASP.NET MVC (2011)ASP.NET MVC (2011)
ASP.NET MVC (2011)wildtango
 
Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Oscar Gensollen
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Facescok12v
 
Org tutorial struts_2010
Org tutorial struts_2010Org tutorial struts_2010
Org tutorial struts_2010Omar Rios
 
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
Aplicaciones web con jakarta struts  - Javier Oliver FulgueraAplicaciones web con jakarta struts  - Javier Oliver Fulguera
Aplicaciones web con jakarta struts - Javier Oliver FulgueraJavier Oliver Fulguera
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con JavaEudris Cabrera
 

Similar a Arquitectura java web (20)

5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-20065. Curso Java Struts I (Framework para Java) - Curso 2005-2006
5. Curso Java Struts I (Framework para Java) - Curso 2005-2006
 
Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NET
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
Spring Mvc Final
Spring Mvc FinalSpring Mvc Final
Spring Mvc Final
 
[ES] Conectividad de java a base de datos(jdbc)
[ES] Conectividad de java a base  de datos(jdbc)[ES] Conectividad de java a base  de datos(jdbc)
[ES] Conectividad de java a base de datos(jdbc)
 
ASP.NET MVC (2011)
ASP.NET MVC (2011)ASP.NET MVC (2011)
ASP.NET MVC (2011)
 
5-Unidad 2: Diseños de Vista-2.2 Para Web
5-Unidad 2: Diseños de Vista-2.2 Para Web5-Unidad 2: Diseños de Vista-2.2 Para Web
5-Unidad 2: Diseños de Vista-2.2 Para Web
 
Desarrollo web
Desarrollo webDesarrollo web
Desarrollo web
 
Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5Desarrollo de Aplicaciones Web con ASP.NET MVC5
Desarrollo de Aplicaciones Web con ASP.NET MVC5
 
5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
 
Curso online-asp-net-lw
Curso online-asp-net-lwCurso online-asp-net-lw
Curso online-asp-net-lw
 
Curso online-asp-net-lw
Curso online-asp-net-lwCurso online-asp-net-lw
Curso online-asp-net-lw
 
Charla
CharlaCharla
Charla
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Faces
 
Struts en Java
Struts en JavaStruts en Java
Struts en Java
 
Org tutorial struts_2010
Org tutorial struts_2010Org tutorial struts_2010
Org tutorial struts_2010
 
3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño
 
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
Aplicaciones web con jakarta struts  - Javier Oliver FulgueraAplicaciones web con jakarta struts  - Javier Oliver Fulguera
Aplicaciones web con jakarta struts - Javier Oliver Fulguera
 
Tecnologias web
Tecnologias webTecnologias web
Tecnologias web
 
[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java[ES] Introducción a las Aplicaciones Web con Java
[ES] Introducción a las Aplicaciones Web con Java
 

Más de Jose Luis Bugarin Peche

ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...Jose Luis Bugarin Peche
 
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaJose Luis Bugarin Peche
 
Gestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMGestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMJose Luis Bugarin Peche
 
Arquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUArquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUJose Luis Bugarin Peche
 
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialAmazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialJose Luis Bugarin Peche
 
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinAprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinJose Luis Bugarin Peche
 
Transformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosTransformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosJose Luis Bugarin Peche
 
Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Jose Luis Bugarin Peche
 
Iluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaIluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaJose Luis Bugarin Peche
 
Introduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceIntroduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceJose Luis Bugarin Peche
 
Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Jose Luis Bugarin Peche
 

Más de Jose Luis Bugarin Peche (20)

ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
 
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
 
Gestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMGestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APM
 
Inteligencia artificial en las Empresas
Inteligencia artificial en las EmpresasInteligencia artificial en las Empresas
Inteligencia artificial en las Empresas
 
Arquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUArquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERU
 
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialAmazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
 
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinAprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
 
Ecosistema Tecnología Java
Ecosistema Tecnología JavaEcosistema Tecnología Java
Ecosistema Tecnología Java
 
Transformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosTransformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes Universitarios
 
¿Que son los microservicios?
¿Que son los microservicios?¿Que son los microservicios?
¿Que son los microservicios?
 
Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0
 
Sistemas Distribuidos Introduccion
Sistemas Distribuidos IntroduccionSistemas Distribuidos Introduccion
Sistemas Distribuidos Introduccion
 
Iluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaIluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referencia
 
Arquitectura empresarial
Arquitectura empresarial Arquitectura empresarial
Arquitectura empresarial
 
Desarrollo empresarial con java
Desarrollo empresarial con javaDesarrollo empresarial con java
Desarrollo empresarial con java
 
Introduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceIntroduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligence
 
Servicios Web en Android
Servicios Web en AndroidServicios Web en Android
Servicios Web en Android
 
Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...
 
Administracion servidores linux
Administracion servidores linuxAdministracion servidores linux
Administracion servidores linux
 
Mejoras en el lenguaje java 7
Mejoras en el lenguaje java 7Mejoras en el lenguaje java 7
Mejoras en el lenguaje java 7
 

Arquitectura java web

  • 1. Arquitectura Java Web Ing. José Luis BugarinIng. José Luis Bugarin jbugarin@consultorjava.comjbugarin@consultorjava.com 1
  • 2. Objetivos Al final de la sesión usted debe ser capaz de:  Conocer el modelo MVC utilizado en JAVA.  Identificar los Frameworks utilizados para el modelo MVC. 2
  • 3. MODELO VISTA CONTROLADOR - MVC  Controlador: Administra el sistema de navegación.  Modelo: Almacena un conjunto de datos.  Vista: Presenta los datos que se encuentran almacenados en un sistema de bases de datos (Modelo). 3
  • 4. GRAFICA DEL MODELO VISTA CONTROLADOR 4
  • 6. Introducción a la capa de presentación Ing. José Luis BugarinIng. José Luis Bugarin jbugarin@consultorjava.comjbugarin@consultorjava.com 6
  • 7. Objetivos Al final de la sesión usted debe ser capaz de: Conocer los fundamentos del protocolo http Identificar los lenguajes que se usan en la capa de presentación. Conocer el Framework de la capa de presentación Identificar herramientas para la presentación 7
  • 9. FUNCIONAMIENTO DE HTTP Http define la manera en que los desarrolladores web interactúan con servidores web. Http Utiliza TCP/IP, el protocolo en red de internet para transferir mensajes entre diversos ordenadores repartidos por el mundo. Esto permite que el usuario pueda comunicarse con cualquier servidor Web desde distintos navegadores Web y esperar una respuesta. 9
  • 10. FUNCIONAMIENTO DE HTTP  Existen dos tipos comunes de solicitudes HTTP: GET y POST.  La solicitud GET añadira un formulario de datos a la direccion solicitada y lo enviara en un paquete.  La solicitud POST enviara primero un paquete conteniendo la informacion del encabezado y despues otro paquete conteniendo el formulario de datos. 10
  • 11. FUNCIONAMIENTO DE HTTP  ¿Que tipo de solicitud debo de usar?  Debes utilizar POST para modificar un recurso en el servidor.  Debes utilizar GET simplemente para obtener informacion del servidor  Los anteriores puntos solo son recomendaciones, la realidad nos indica que no siempre es asi. 11
  • 13. Lenguajes utilizados en la capa de presentación  HTML  JavaScript  Hojas de estilo CSS  JSP (J2EE) 13
  • 14. ¿QUE ES UNA PAGINA JSP?  Una pagina JSP es, sencillamente, una pagina HTML que contiene instrucciones especiales para ejecutar código java por toda la pagina.  El contenedor web J2EE es el encargado de administrar las paginas JSP. 14
  • 15. PASOS DEL PROCESAMIENTO JSP N a v e g a d o r W e b ¿ H a c a m b ia d o la p a g in a ? C o m p ila r S e r v le t G e n e r a r C ó d ig o F u e n t e P r o c e s a r S o lic it u d I n ic ia r S e r v le t S I N O S o lic it u d H T T P 15
  • 16. ESTRUCTURA DE UNA PAGINA JSP  Soporta HTML.  Los JSP consisten en: Directivas Declaraciones Expresiones scriptlets 16
  • 17. ESTRUCTURA JSP  Directivas  Declaraciones  Scriptlet  Adicionalmente el propio código HTML 17
  • 20. COMO INICIAR CON STRUTS  Para iniciar con struts necesitamos lo siguiente: Action Form Action Struts-config.xml Paginas JSP 20
  • 21. Verificar que exista la configuración de struts en el gestor de despliegue web.xml 21
  • 22. Caso Practico – Navegación con Struts 22
  • 23. Formulario de Datos  Formulario en HTML / JSP 23
  • 24. Comenzando con STRUTS  Por cada formulario Web, se necesita escribir el respectivo ActionForm de Struts.  Un ActionForm es un JavaBean que extiende de org.apache.struts.action.ActionForm, este mantiene el estado de sesión para la aplicación Web y el objeto ActionForm se rellena automáticamente en el servidor con los datos introducidos en un formulario en la capa de presentación que interactúa con los usuarios finales. 24
  • 25. Creación de LoginForm para nuestro Formulario Web  Formulario: 25
  • 26. Creacion del Action en Struts  Ahora vamos a visualizar la clase Action correspondiente para esta pequeña funcionalidad implementada en Struts. 26
  • 27. Captura de imagen de un Action de Struts 27
  • 28. VALIDACIONES CON STRUTS • Struts Framework proporciona la funcionalidad para validar los datos del formulario • Se puede utilizar para validar los datos en el navegador de los usuarios, así como en el lado del servidor. • El Framework Validator fue desarrollado por David Winterfeldt como un plug in de terceros para Struts. Ahora, el framework Validator es una parte del proyecto de Jakarta Commons y puede ser utilizado con o sin Struts. El framework Validator viene integrado con el framework Struts y puede ser utilizado sin realizar ninguna configuración adicional. 28
  • 29. VALIDACIONES CON STRUTS • Struts para usar las validaciones utiliza dos archivos con extensión .xml • Estos archivos son: validator-rules.xml y validation.xml • El validator-rules.xml define las rutinas de validación estándar, estos son reutilizables y utilizados en validation.xml 29
  • 30. STRUTS TAGS LIBRARY  El framework Struts proporciona un conjunto de librerías de etiquetas, que asisten en la tarea de la creación de la vista de MVC para evitar incluir código Java en los JSPs, entre ellas:  Bean Tags  HTML Tags  Logic Tags 30
  • 31. HTML TAGS  Estas etiquetas son principalmente usadas para:  Crear formularios de entrada de datos y  Otras utilidades para visualizar interfaces basados en HTML.  Algunas de las acciones más útiles son:  base  genera un elemento HTML <base>  errors  condicionalmente visualiza un conjunto acumulado de mensajes de error  form  define un formulario de entrada  text  visualiza un campo de entrada de tipo texto  messages  condicionalmente visualiza un conjunto de mensajes acumulados  submit  visualiza un botón de entrega  Etc. 31
  • 32. Logic Tags  Usadas para:  Iterar sobre colecciones  Generación condicional de salida, y  Flujo de aplicación  Algunas de las acciones más útiles son:  present  genera el contenido de marcado dentro de esta etiqueta si el valor indicado es encontrado en esta petición  notPresent  lo opuesto a present  iterate  repite el contenido anidado dentro de esta etiqueta al iterar sobre una colección  forward  transfiere control a la página especificada por la entrada ActionForward.  Etc. 32
  • 33. Bean Tags  Usadas principalmente para: Escribir por pantalla los valores de los request en los jsp. Definir atributos en el contexto de la pagina en tiempo de compilación.  Algunas de las mas usadas son: Define: define un atributo en el contexto de la petición en tiempo de compilación. Write: muestra por pantalla un valor de un objeto que se encuentre en el contexto de la petición. 33