PDF de programación - Desarrollo de aplicaciones Java EE con Struts 2, Spring y EJB 3.0

Imágen de pdf Desarrollo de aplicaciones Java EE con Struts 2, Spring y EJB 3.0

Desarrollo de aplicaciones Java EE con Struts 2, Spring y EJB 3.0gráfica de visualizaciones

Actualizado el 22 de Agosto del 2018 (Publicado el 18 de Enero del 2018)
2.033 visualizaciones desde el 18 de Enero del 2018
2,0 MB
70 paginas
Creado hace 16a (19/06/2007)
Desarrollo de aplicaciones
Desarrollo de aplicaciones
Java EE con Struts 2, Spring y
Java EE con Struts 2, Spring y

EJB 3.0
EJB 3.0

© 2007, Grupo Salenda, S.L.

¿Qué es J2EE?
¿Qué es J2EE?

j

d

ifi i

• Conjunto de especificaciones y prácticas

á i
que permiten desarrollar, desplegar y
q p
p g y
gestionar aplicaciones multicapa” – Sun
Microsystems.
Microsystems.

• Lógica dividida en componentes.

• Componentes divididos en capas.

2

Componentes J2EE
Componentes J2EE

C

• Componentes software autocontenidos.
• Ensamblados en una aplicación J2EE, con sus

id

ft

t

t

t

fi h

l
clases y ficheros relacionados.

i
• Tipos de componentes:

p
– Clientes de la aplicación y applets – se ejecutan en

d

p

l

– Componentes web (JSP & Servlet) – se ejecutan en

el cliente.

el servidor.

– Componentes de negocio (EJB) – se ejecutan en el
l

d

(

)

j

i

servidor.

3

Clientes J2EE
Clientes J2EE

• Clientes web (aka “Clientes ligeros”)
• Clientes web (aka Clientes ligeros ).
– Páginas web dinámicas – generadas por

componentes web de la capa Web
componentes web de la capa Web.

– Navegador web – renderiza las páginas recibidas del

servidor.

• Aplicaciones cliente (aka “Clientes

pesados”).
– Interfaz de usuario (Swing / AWT / SWT).
– Se ejecutan en el PC del cliente.
– Acceden directamente a los componentes de

di

d

t

t

l

t

d

A
negocio

4

Capas de J2EE
Capas de J2EE

5

Contenedores J2EE
Contenedores J2EE

f

t

• Interfaz entre un componente y la
I t
l
funcionalidad de bajo nivel de la
l t f
plataforma que soporta ese componente.
• Tipos:p

t

t

t

– Servidor J2EE – proporciona contenedores web y

– Contenedor de EJB’s – gestiona la ejecución de

– Contenedor web – gestiona la ejecución de JSP’s

EJB.
J

EJB’s.
J

y Serlvets.
y

6

Contenedores J2EE
Contenedores J2EE

7

Empaquetado
Empaquetado

• Módulo uno o más componentes J2EE para el
• Módulo: uno o más componentes J2EE para el

• Tipos de módulos:

mismo tipo de contenedor + descriptor.
• Descriptor de despliegue (DD): documento XML
Descriptor de despliegue (DD): documento XML
que describe las propiedades de despliegue de un
módulo.
d
i
– EJB’s: .jar
– Web: .war
Web war
– Resource Adapter: .rar
– Cliente de la aplicación: .jar
Cliente de la aplicación: .jar

ód l

• Un fichero EAR contiene una aplicación J2EE, que
puede estar compuesta por uno o varios módulos

8

Servidores de aplicaciones
Servidores de aplicaciones

• Software que ayuda al desarrollo despliegue
• Software que ayuda al desarrollo, despliegue

y control de aplicaciones empresariales
(distribuidas)
(distribuidas).

• Sirven como contenedores de los

componentes de una aplicación J2EE
componentes de una aplicación J2EE

• Provee middleware para acceso a servicios

y

subyacentes
– Seguridad
– Persistencia
– Acceso a datos
– …

9

Arquitectura de un servidor de
aplicaciones

10

Contenedores de aplicaciones
Contenedores de aplicaciones





E i t
h
Existen muchos servidores de aplicaciones
– Comerciales

id

d

li

i

• WebSphere (IBM)
• WebLogic (BEA Systems)
• Oracle AS (Oracle Corp)

– Libres

JBboss (JBoss Inc)


• Tomcat (Apache Foundation)


Jonas (ObjectWeb)
Jonas (ObjectWeb)

Comparativa de servidores de aplicaciones
– http://en.wikipedia.org/wiki/Matrix_of_Application_Servers#Java
http://en wikipedia org/wiki/Matrix of Application Servers#Java

11

Servidores de aplicaciones
Servidores de aplicaciones

d

l

• Todos los comerciales ofrecen
i
– Contenedores de jsp’s y servlets
j p y
– Contenedores de EJB’s
– Funcionalidades añadidas (dependiendo del
Funcionalidades añadidas (dependiendo del
vendedor)
t

• Existen otros servidores de aplicaciones
E i t
que solo ofrecen contenedor de jsp’s y
servlets (tomcat)

id

li

i

l

f

d

12

• Extienden la funcionalidad de un servidor

lid d d

id

d

f

l

i

• Componentes ejecutables en un contenedor

bl

d

j

• Encargados de escuchar a las peticiones de

Servlets
Servlets

E ti
web

web

un cliente

un cliente

• Encargados de responder a las peticiones de

• Mejor rendimiento que CGI : uso de threads

13

JSPJSP

• Separacion entre logica de negocio y

d

l

i

i

i

presentacion
p

• Facil mantenimiento
• Basado en la tecnologia de servlets
l t
l
• Orientado a la logica de presentacion

i d
p

B

d

g

t

l

14

Servlets en el servidor web
Servlets en el servidor web

• Diagrama de despliegue de un servidor

d d

id

i

li

d

web con un contenedor web:

15

Ejecución de los servlets
Ejecución de los servlets

• Para una petición:

i ió

• Para ‘n’ peticiones
Para n peticiones

16

Ventajas y desventajas de los
Servlets
• Ventajas:
t j

V
– Prestaciones (los threads son más rápidos y ligeros

que los procesos)
que los procesos)

El l

j

J

– Escalable
– El lenguaje Java es orientado a objetos y robusto.
bj t
– El lenguaje Java es multiplataforma
D
– ¿Cómo separar la lógica de negocio y la

• Desventajas:

b t

t j

i

t d

presentación?
ió ?

t

– Cuestiones de concurrencia

17

Tecnología JavaServer Pages (JSP)
Tecnología JavaServer Pages (JSP)



l

till

d

á i

ódi

HTML

L
Las plantillas de código son como páginas HTML estáticas, pero con
código Java embebido para permitir la generación dinámica de
datos y HTML.
• Ejemplo:
<table border="1" cellspacing="0" cellpadding=’5’>
<tr><th>number</th><th>squared</th></tr>
<% for ( int i=0; i<10; i++ ) { %>

táti

p

p

g

g

<tr><td><%= i %></td>

<td><%= (i * i) %></td></tr>

(

)

<% } %>

</table>

18

Ventajas y desventajas de las JSP
Ventajas y desventajas de las JSP

• Ventajas:

j

– Todas las ventajas que tienen los servlets: Altas

q

j

prestaciones, escalabilidad, independencia de
plataforma, etc.
p

,
• Desventajas:

l

d

á i

– Si sólo se emplean páginas JSP, el código de
Si ól
script que realiza la lógica de negocio puede
llegar a ser demasiado grande conf so
llegar a ser demasiado grande y confuso,
haciendo difícil su depuración

JSP l ódi

19

Diagrama de secuencia de una
petición GET

20

Resumen
Resumen

• Puedes usar un componente de la vista para presentar datos
• Puedes usar un componente de la vista para presentar datos,

mostrar un formulario, mensajes de información y demás.
• El protocolo HTTP proporciona un mecanismo para solicitar

vistas tanto estáticas como dinámicas
vistas tanto estáticas como dinámicas

• El contenedor web intercepta las peticiones HTTP y activa el

servlet que sea necesario

l

• Se puede desarrollas una clase servlet que implemente el
l

d d

ll

l

i

l

método doGet para procesar una petición
p

• Se puede acceder a la información de la petición del

p

inputstream a través del objeto request provisto por el
l
contenedor.
g

• Se puede generar una vista escribiendo directamente en el
outputstream del objeto request provisto por el contenedor

d l b

p

21

Integración de Servlets y JSP
Integración de Servlets y JSP

El Patrón MVC
El Patrón MVC

El patrón MVC
El patrón MVC

© 2007, Grupo Salenda, S.L.

¿Porqué combinar Servlets y JSP?
¿Porqué combinar Servlets y JSP?

i

f

ili

i

í
y

• Escenario típico: usar JSP para facilitar el
l
desarrollo y mantenimiento del contenido
HTML
– Para código dinámico simple invocar código
Para código dinámico simple, invocar código
servlet desde elementos de script.
– Para aplicaciones un poco más complejas, usar
Para aplicaciones un poco más complejas usar
clases propias invocadas desde elementos de
script
script.

23

¿Porqué combinar Servlets y JSP?
¿Porqué combinar Servlets y JSP?

• Pero eso no es suficiente

fi i

– Para procesamiento complejo, empezar con JSP

p j ,

p

p

J

es una mala aproximación
– A pesar de la facilidad de separar el código real
A pesar de la facilidad de separar el código real
en clases separadas, beans y custom tags,
asumir que una JSP es una solapágina
asumir que una JSP es una solapágina

24

Posibilidades para manejar una
sola petición
• Arquitectura MVC. Necesaria cuando:
p

– Una sola petición puede derivar en múltiples

d

i

i

p

p

resultados diferentes.
– Existe un gran equipo de desarrollo con
Existe un gran equipo de desarrollo con
funciones bien separadas.
– Se realiza un procesamiento complicado de los
Se realiza un procesamiento complicado de los
datos.

25

Patrón MVC
Patrón MVC

Modelo

Vi t
Vista

C
Controlador

l d

t

¿Qué es Apache Struts?
¿Qué es Apache Struts?

• ¿Un framework MVC?

k

f

p

– Struts provee un framework unificado para el
despliegue de aplicaciones web que usan la
arquitectura MVC.

q

p

• ¿Una colección de utilidades?

– Stuts provee una serie de clases de utilidades

St t
para manejar las tareas comunes del desarrollo
de aplicaciones eb
de aplicaciones web

tilid d

i d

d

l

27

¿Qué es Apache Struts?
¿Qué es Apache Struts?

• ¿Un conjunto de librerías de etiquetas

d lib

j

í

d

i

personalizadas ?
p
– Struts provee librerías de etiquetas

personalizadas para mostrar propiedades de
personalizadas para mostrar propiedades de
beans, generar formularios HTML …

28

Ventajas de Struts
Ventajas de Struts

• Configuración basada en archivos

ió b

fi

d

hi

centralizados:
– Archivos XML.
• Form beans
• Form beans.
• Bean tags:

– Tags de acceso a las propiedades de los beans.

• HTML tags:
• HTML tags:

– Asocia formularios HTML con beans.

29

Ventajas de Struts
Ventajas de Struts

• Validación de formularios.

lid ió d f

l

i

• Aproximación consistente con el patrón

MVCMVC.

30

Desventajas de Struts
Desventajas de Struts

d

• Mayor curva de aprendizaje
j
• Peor documentación:
Peor documentación:
– Comparada con la documentación standard de

di

servlets y JSP’s
servlets y JSP s.

• Menor transparencia:

– El framework añade mayor complejidad
• Aproximación rígida:
Aproximación rígida:
– Con Struts es muy difícil usar algo distinto a MVC.

31

Control de flujo de Struts
Control de flujo de Struts

JSP

Form

Determina
r Acción
r Acción

Action

Elegir JSP

JSP

32

Ejemplo: Action java
Ejemplo: Acti
  • Links de descarga
http://lwp-l.com/pdf8363

Comentarios de: Desarrollo de aplicaciones Java EE con Struts 2, Spring y EJB 3.0 (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad