Tema 10. Dinámica y funciones de la Atmosfera 2024
T tema1
1. 1
Tema 1. Introducción a Java EE
1. Plataforma para desarrollo de Aplicaciones
Empresariales
• Alternativas
• Arquitectura Cliente/Servidor
2. Tecnología Java
3. Java Platform, Enterprise Edition
Objetivos del tema
• Propiedades de las
aplicaciones empresariales
• El Modelo Cliente/Servidor
• Presentar la Plataforma Java
• Presentar Java EE y otras
tecnologías horizontales
Tema 1. Introducción a Java EE
1. Plataforma para desarrollo de Aplicaciones
Empresariales
• Alternativas
• Arquitectura Cliente/Servidor
2. Tecnología Java
3. Java Platform, Enterprise Edition
Objetivos del tema
• Propiedades de las
aplicaciones empresariales
• El Modelo Cliente/Servidor
• Presentar la Plataforma Java
• Presentar Java EE y otras
tecnologías horizontales
2. 2
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Características:
– Heterogénea: Debe permitir múltiples plataformas, sistemas operativos
y lenguajes de desarrollo.
– Fiable: Tiene que dar la confianza de que cumplirá su cometido.
– Segura: Debe controlar el acceso, la autorización y el transporte
– Robusta: Debe ser tolerante a fallos.
– Escalable: Tiene que facilitar la ampliación y modificación necesarias
– Alta disponibilidad: Debe ser fácil su adquisición, formación y
actualización.
– Fácil mantenimiento: Debe ser fácil mantener el sistema mediante la
actualización de sus componentes.
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Alternativas:
– CORBA (Common Object Request Broker Architecture )
– .NET (dot NET)
– Java Platform, Enterprise Edition (Java EE)
3. 3
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• CORBA
– Ventajas
• Soporta múltiples plataformas y lenguajes de programación
• Dispone de una gran cantidad de servicios
• Definida por un organismo serio e independiente
– Inconvenientes
• Complejidad en el desarrollo
• Lentitud para adaptarse (burocracia)
• Pocas implementaciones libres
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• .NET
– Ventajas
• Soporta múltiples lenguajes de programación
• Fácil proceso de desarrollo (Visual Studio .NET)
• Entorno Windows muy extendido
• Buen marketing
– Inconvenientes
• Exclusiva del sistema operativo Windows
• Propia de Microsoft
• Casi ninguna implementación libre
4. 4
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Java EE
– Ventajas
• Soporte para múltiples plataformas y sistemas operativos
• Avalado por múltiples empresas (SUN, IBM, ORACLE, etc)
• Competitividad
• Soluciones libres
– Inconvenientes
• Exclusivo para lenguaje Java
• Complejidad relativa en el desarrollo de aplicaciones
• No existe un entorno de desarrollo fijo
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor
– Modelo Lógico: capas (layers)
• Gestor de Presentación (presentation manager): Muestra la
interface de usuario.
• Lógica de Presentación (presentation logic): Establece que se
debe mostrar al usuario.
• Lógica de la Aplicación (appplication logic): Funcionalidad de la
aplicación.
• Lógica del Negocio (business logic): Funcionalidad de la empresa,
común para todas las aplicaciones.
• Lógica de los Datos (data logic): Definición lógica de los datos
(tablas, vistas, tipos de datos, claves, etc.)
• Gestor de Datos (data manager): Encargada de escribir y acceder
a la base de datos.
5. 5
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor
– Modelo Físico: capas (tiers)
• 1 capa (1-tier): Sistema Monolítico
(No es realmente una aplicación C/S)
BD
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor
– Modelo Físico: capas (tiers)
• 2 capas (2-tiers):
Cliente/Servidor tradicional
BD
6. 6
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor
– Modelo Físico: capas (tiers)
• 3 capas (3-tiers):
Cliente – Lógica Negocio – Datos
BD
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor
– Modelo Físico: capas (tiers)
• n capas (n-tiers):
BD
7. 7
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Plataforma para desarrollo de Aplicaciones Empresariales
• Arquitectura Cliente/Servidor. Tendencias Actuales
Modelo de 3 capas
– Basado en Objetos
• Clientes: Aplicaciones propias
• Lógica de Negocio y de Datos: Objetos distribuidos
– Basado en la WEB
• Clientes: Navegadores (browsers)
• Lógica de Negocio y de Datos: Generación dinámica de contenidos
en lenguaje HTML, XML, xHTML.
Tema 1. Introducción a Java EE
1. Plataforma para desarrollo de Aplicaciones
Empresariales
• Alternativas
• Arquitectura Cliente/Servidor
2. Tecnología Java
3. Java Platform, Enterprise Edition
Objetivos del tema
• Propiedades de las
aplicaciones empresariales
• El Modelo Cliente/Servidor
• Presentar la Plataforma Java
• Presentar Java EE y otras
tecnologías horizontales
8. 8
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Tecnología Java
1995: SUN libera un lenguaje Orientado a Objetos similar a C/C+,
denominado Java. El producto se conocía como Java
Development Kit (JDK). Las versiones 0.1, 1.0 y 1.1
1998: Se produce una actualización importante en el producto (versión
1.2), pasando el JDK a denominarse Java 2, Standard Edition
(J2SE). Últimas versiones 1.3 y 1.4
Se introduce la arquitectura Java 2, Enterprise Edition (J2EE),
para desarrollo de aplicaciones empresariales. Versiones 1.3 y 1.4
Se introduce el API Java 2, Micro Edition (J2ME), para el
desarrollo de aplicaciones de dispositivos móviles.
Actualmente:
Estándar: J2SE 5.0 y (beta) Java SE 6
Empresarial. J2EE 1.4 y (beta) Java EE 5
Tema 1. Introducción a Java EE
1. Plataforma para desarrollo de Aplicaciones
Empresariales
• Alternativas
• Arquitectura Cliente/Servidor
2. Tecnología Java
3. Java Platform, Enterprise Edition
Objetivos del tema
• Propiedades de las
aplicaciones empresariales
• El Modelo Cliente/Servidor
• Presentar la Plataforma Java
• Presentar Java EE y otras
tecnologías horizontales
9. 9
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Java Platform, Entreprise Edition
• ¿ Qué es Java EE ?
Java Platform, Enterprise Edition (antes J2EE, ahora Java EE) es un
estándar para el desarrollo de aplicaciones empresariales (portables,
robustas, escalables y seguras) usando tecnología Java.
Java EE es una especificación, no un producto. Los productos que cumplen
con la especificación son realizados por terceras empresas u
organizaciones.
SUN libera en el Java EE:
• Especificaciones de cada tecnología incluida.
• Test de compatibilidad (Compatibility Test Suite)
• Implementación de referencia. Para desarrollo de aplicaciones, pero de uso
no libre. (Sun Java System Application Server Platform Edition ..)
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Java Platform, Entreprise Edition
• Tecnologías
– Enterprise JavaBeans (EJB).
– Java Servlet
– JavaServer Page (JSP)
– JavaServer Pages Standard Tag Library (JSTL).
– JavaServer Faces
– Java Message Service (JMS).
– Java Transaction API (JTA).
– JavaMail API y JavaBeans Activation Framework (JAF).
– Tecnologías XML (JAXP, JAX-RPC, JAX-WS, JAXB, SAAJ, JAXR)
– JDBC API
– Java Naming and Directory Interface (JNDI)
– Java Authentication and Authorization Service (JAAS)
10. 10
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Java Platform, Entreprise Edition
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Java Platform, Entreprise Edition: Modelo
Datos
Datos
Datos
11. 11
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Clientes
Java Platform, Entreprise Edition
Datos
Datos
Servlets
JSP
EJB
Petición
Respuesta
HTTP
HTTP
XML
xHTML
Datos
• Modelo basado en la WEB
JDBC
JDBC
JDBC
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Clientes
Java Platform, Entreprise Edition
Datos
Datos
JSP Java Beans
Petición
Respuesta
HTTP
HTTP
XML
xHTML
Datos
• Arquitectura JSP
Model 1
JDBC
12. 12
Universidad de Huelva Dpto. Ing. Electrónica, Sist. Informátios y Automática Curso 2006/2007
Clientes
Java Platform, Entreprise Edition
Datos
Datos
Servlets
Controller
JSP
View
Java Beans
Model
Petición
Respuesta
HTTP
HTTP
XML
xHTML
Datos
• Arquitectura JSP
Model 2: Model-View-Controller (MVC)
JDBC