Actualizado el 21 de Marzo del 2018 (Publicado el 8 de Enero del 2018)
1.387 visualizaciones desde el 8 de Enero del 2018
713,3 KB
16 paginas
Creado hace 10a (25/09/2013)
Introducción al
Desarrollo de
Aplicaciones
Empresariales
Definición
• Java 2 Enterprise Edition: plataforma de
desarrollo de aplicaciones para empresas,
basado en EJBs.
• EJB (Enterprise Java Beans): especificación de
componentes server-side.
• Nos permite escribir aplicaciones distribuidas
escalables, fiables y seguras, sin tener que
escribir el framework de objetos distribuidos uno
mismo; ya se ha escrito para nosotros.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
2
Elementos
• Java (J2SE)
• EJB 1.0, 1.1
• JDBC (Java Database Connectivity) 2.0
• JTA (Java Transaction Service) 1.0.
• CORBA.
• RMI/IIOP.
• Java Servlets 2.2
• JSP (Java Server Pages) 1.1
• JNDI 1.2
• JavaMail 1.1
• JMS (Java Messaging Service) 1.0: API.
• XML
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
3
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
4
Recordando…
¿Qué es un componente?
• Es código que implementa un conjunto de interfaces
perfectamente bien definidas.
• No son aplicaciones enteras, sino piezas de puzzle.
• Para qué:
• No se requiere tanta experiencia: caja negra.
• Ensamblado más rápido (gráfico...)
• Coste menor.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
5
Arquitectura de componentes
• Herramientas de creación.
• Contenedor de gestión de componentes desplegados
(deployed): entorno runtime y conjunto de servicios comunes.
• Herramientas de despliegue y mantenimiento de
componentes.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
6
Componentes en Java
1.
2. EJBs: son componentes de despliegue.
Java Beans: son componentes de desarrollo.
1. Applets: desplegados en una web page, con el
2.
3.
appletviewer como contenedor.
Servlets: desplegados en un web server, con el
servlet engine del ws como contendor.
EJBs: desplegados en el application server, con el
motor del servidor como contenedor.
Los dos primeros son client-side. El tercero es server-
side.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
7
Arquitectura N-tier
• Arquitectura en dos capas.
• En tres capas:
• Capa de presentación.
• Capa de lógica de negocio.
• Capa de datos.
• En n capas:
• Cuando la arquitectura 3-tier no tiene ninguna limitación física.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
8
Problemas de la 2-tier
• Capa de presentación + capa de lógica de negocio:
• Costes de desarrollo altos: los drivers ODBC, JDBC, han de ser
instalados en ambas capas.
• El cambio del driver de la bd implica cambios en todos los
clientes y servidores.
• Migración de la lógica de negocio es cara: implica
reinstalaciones en todos los clientes.
• Costes de conexión a BBDD son altos (uno por cliente).
• Prestaciones de red.
• Capa de lógica de negocio + capa de datos
• Stored procedures: ¿qué pasa si cambio la bd?
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
9
Entonces Tenemos:
1.
Ubicación de capas:
Presentación: en el espacio de uno o más servidores web, vía ASPs,
JSPs, servlets, etc.
Lógica de negocio: en uno o más servidores de aplicaciones.
Datos: en una o más bbdd, almacenando procedimientos.
Los costes son menores: los drivers en la parte servidora.
2.
3. Modificación de bbdd menor: clientes no acceden a la bbdd.
4. Migración de la lógica de negocio es mínima: clientes
independientes.
Se puede conseguir mayor seguridad mediante firewalls.
Recursos pueden ser reutilizados, y “pooled”.
5.
6.
7. Prestaciones: siguen sufriendo. Costes de mantenimiento altos.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
10
Arquitectura JEE
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
11
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
12
Qué necesita una arquitectura en N
capas
• Muchos Componentes:
• Broker de petición de métodos.
• Resource pooling.
• Gestión del ciclo de vida de componentes.
• Gestión del balance de carga de cada capa.
• Entorno seguro.
• Gestión de redes y sistemas: monitorización y control.
• Autorización de usuarios.
• ...
• ¿Y si reutilizamos componentes ya creados?
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
13
Opciones ….
• Microsoft DNA (Distributed interNet Applications
architecture): producto.
• Oracle JEE: especificación.
• OMG CORBA: complementaria
• Oracle Internet Platform: complementaria...
• Microsoft .NET:
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
14
Elementos de EJBs
• Bean provider: componentes reutilizables (as given, by customization, by
extension).
• Container provider: runtime.
• Server provider: lógica del app. Server.
• Application assembler.
• Deployer.
• Administrador de sistemas.
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
15
3
1
0
2
/
9
0
/
5
2
F
i
u
g
e
t
s
e
p
A
m
Y
i
.
g
n
I
16
Comentarios de: Introducción al Desarrollo de Aplicaciones Empresariales (0)
No hay comentarios