Documentos de Académico
Documentos de Profesional
Documentos de Cultura
3 cmpnts-JavaEE
3 cmpnts-JavaEE
de componentes y a Java EE
Autores: Simon Pickin
Natividad Martínez Madrid
Pablo Basanta Val
Dirección: Departamento de Ingeniería Telemática
Universidad Carlos III de Madrid
España
Versión: 1.0
Software de
Comunicaciones
2009-2010 1
© Los autores
Agradecimientos
Software de
Comunicaciones
2009-2010 2
© Los autores
Contenidos
• Introducción
– desarrollo basado en componentes
– aplicaciones y arquitecturas empresariales
• Arquitecturas cliente-servidor y multi-tier
– conceptos básicos
– nivel de cliente
– nivel de presentación
– nivel de negocio
– nivel de datos
• La plataforma Java Enterprise Edition
– introducción
– la arquitectura y los contenedores de Java EE
– los componentes de Java EE
Software de
Comunicaciones – los servicios de Java EE
2009-2010 3
© Los autores
Ojala tuvieramos
componentes software…
Software de
Comunicaciones
2009-2010 5
© Los autores
Software de
Comunicaciones
2009-2010 8
© Los autores
Definición de componente (5/5)
Software de
Comunicaciones
2009-2010 9
© Los autores
Modelos de componentes
Software de
Comunicaciones
2009-2010 11
© Los autores
Software de
Comunicaciones
2009-2010 13
© Los autores
• Tienen en común:
– modularidad (bajo acoplamiento externo y alta cohesión interna)
– encapsulación/ocultación de información, abstracción,...
• Pero los componentes:
– tienen granularidad menos fina
– son elementos más asociados a la aplicación
• no tienen por qué corresponderse con elementos del mundo real
– hacen explícitas sus dependencias del contexto
• implementaciones actuales: no todas las dependencias
– interactúan vía protocolos de interacción bien definidos
– unidad de despliegue: pueden desplegarse de manera
independiente
Software de – unidad de re-uso (¿y las bibliotecas de clases, no lo son?)
Comunicaciones
2009-2010 en todo caso, deberían conducir a un reuso mucho mayor 14
© Los autores
Aplicaciones empresariales: requisitos (1/2)
Software de
Comunicaciones
2009-2010 16
© Los autores
Contenidos
• Introducción
– desarrollo basado en componentes
– aplicaciones y arquitecturas empresariales
• Arquitecturas cliente-servidor y multi-nivel
– conceptos básicos
– nivel de cliente
– nivel de presentación
– nivel de negocio
– nivel de datos
• La plataforma Java Enterprise Edition
– introducción
– la arquitectura y los contenedores de Java EE
– los componentes de Java EE
Software de
Comunicaciones – los servicios de Java EE
2009-2010 17
© Los autores
Cliente
Servidor
Cliene gordo
Lógica de
negocio
Datos
Software de
Comunicaciones
2009-2010 19
© Los autores
Lógica de
Cliente
Cliente delgado
negocio Servidor
Datos
Servicios
Software de
Comunicaciones
2009-2010 22
© Los autores
Ventajas de las arquitecturas multi-nivel
Nivel Cliente
Nivel Medio Nivel Datos
Cliente delgado Lógica de negocio “Back End”
Windows Componente
cuenta cliente
Macintosh
SAP/R3
Presentación
Componente server
banco
Unix
Componente
Java movimiento
DBMS
Driver base de datos
server
Browser
Conector
Sevicio transacciones
JCA
Cliente Web datos
Servlets, JSP
(EIS)
JDBC
Software de
Comunicaciones
2009-2010 25
© Los autores
• Tareas de infraestructura:
– instanciación de componentes
– comunicación
– sincronización de accesos concurrentes
– preparación de un entorno seguro
– disponibilidad
– seguridad de transacciones
Software de
Comunicaciones
2009-2010 26
© Los autores
Nivel de cliente
Nivel medio
• Middleware:
– suele incluir software especializado para la realización de
determinadas tareas (servicios corporativos estándares) :
• monitores, sistemas de nombres, sistemas de colas de
mensajes, etc.
• e.g. CORBA y CORBA services
Software de
Comunicaciones
2009-2010 28
© Los autores
Nivel medio: lógica de presentación
Software de
Comunicaciones
2009-2010 29
© Los autores
Contenidos
• Introducción
– desarrollo basado en componentes
– aplicaciones y arquitecturas empresariales
• Arquitecturas cliente-servidor y multi-tier
– conceptos básicos
– nivel de cliente
– nivel de presentación
– nivel de negocio
– nivel de datos
• La plataforma Java Enterprise Edition
– introducción
– la arquitectura y los contenedores de Java EE
– los componentes de Java EE
Software de
Comunicaciones – los servicios de Java EE
2009-2010 32
© Los autores
Platforma Java Enterprise Edition
Contenedor Cliente
Aplicaciones legado
Servlets, JSP Enterprise JavaBeans
Cliente Java
Software de
Comunicaciones
2009-2010 35
© Los autores
Applets Servlets/
Java Server Pages
Enterprise
Componentes JavaBeans
cliente
JavaBeans JavaBeans
Aplicación Java EE
Software de
Comunicaciones
2009-2010 36
© Los autores
Contenedores (containers)
Contenedor de applets
Contenedor Web Contenedor EJB
JSP Tools
Applets Enterprise JavaBeans
Servlet Engine
• Servlets:
– Java code: más fácil controlar el flujo de acciones
• JSP:
– lenguaje de marcado basado en etiquetas: más fácil representar
información
Software de
Comunicaciones
2009-2010 38
© Los autores
Enterprise JavaBeans
Software de
Comunicaciones
2009-2010 41
© Los autores