Introducción J2EEParte II - Resumen
El profe
JEE La plataforma JEE implica una forma de
implementar y desplegar aplicaciones empresariales.
Java EE está destinada a desarrollar aplicaciones distribuidas con una arquitectura multi-capa.
Las aplicaciones Java EE suelen ser consideradas aplicaciones de tres capas porque se distribuyen en tres localizaciones, ordenadores clientes, el sistema donde se ejecuta el servidor de aplicaciones, y el sistema donde reside la base de datos.
Se desarrollan en base a especificaciones o guías de desarrollo.
Las capas de la arquitectura En la arquitectura JEE se contemplan cuatro capas, en función del
tipo de servicio y contenedores: Capa de cliente, también conocida como capa de presentación o
de aplicación. Nos encontramos con componentes Java (applets o aplicaciones) y no-Java (HTML, JavaScript, etc.).
Capa Web. Intermediario entre el cliente y otras capas. Sus componentes principales son los servlets y las JSP. Aunque componentes de capa cliente (applets o aplicaciones) pueden acceder directamente a la capa EJB, lo normal es que Los servlets/JSPs pueden llamar a los EJB.
Capa Enterprise JavaBeans. Permite a múltiples aplicaciones tener acceso de forma concurrente a datos y lógica de negocio. Los EJB se encuentran en un servidor EJB, que no es más que un servidor de objetos distribuidos. Un EJB puede conectarse a cualquier capa, aunque su misión esencial es conectarse con los sistemas de información empresarial
Capa de sistemas de información empresarial.
Capas y Contenedores JEE
Capas JEE
Componentes de J2EE
La especificación del J2EE define
las siguientes capas de una
aplicación:
Capa de cliente. Corre en la
máquina cliente.
Capa de web. Corre en el
servidor J2EE.
Capa de negocio. Corre en el
servidor J2EE.
Capa de Sistema de Información
Empresarial (EIS). Corre en el
servidor EIS.
Capa de cliente Clientes web. Consisten de dos partes: páginas web dinámicas y un
navegador web. Se les conoce como "clientes livianos" (thin client)
porque no hacen querys a bases de datos, ni ejecutan reglas complejas
de negocio, ni se conectan a aplicaciones heredadas. Dichas
operaciones son manejadas por el servidor J2EE.
Applets. ES una pequeña aplicación cliente escrita en Java que es
ejecutada por la máquina virtual de Java instalada en el navegador web.
Clientes de aplicación. Son aplicaciones que corren en la máquina
cliente y permiten a los usuarios manejar tareas que requieren una
interfaz más rica que la que es otorgada por html o xml. Generalmente
tienen una interfaz gráfica (GUI) creada usando Swing o Abstract
Window Toolkit (AWT). También es posible usar un intérprete de
comandos.
Capa de cliente (cont.)
JavaBeans. Los clientes pueden tener componentes
basados en JavaBeans para el manejo de flujo de
datos entre un cliente de aplicación o applet y los
componentes que corren en el servidor J2EE o entre
componentes del servidor y una base de datos.
Dichos JavaBeans no se consideran componentes del
J2EE.
Comunicaciones con el Servidor J2EE. El cliente se
comunica con el componente de negocio ya sea
directamente o a través de páginas JSP o servlets que
corren en el componente web.
Capa de cliente (cont.)
Capa Web
Servlets: Son clases del lenguaje Java que procesan
solicitudes y construyen respuestas de forma
dinámica.
Páginas JSP: Son documentos de texto que son
ejecutados como servlets pero permiten un
acercamiento más natural a la creación de contenido
estático.
Applets y Páginas html estáticas. Son usadas por los
componentes web pero no se consideran
componentes de J2EE. Lo mismo ocurre con clases
utilitarias y JavaBeans del lado del servidor.
Capa Web (cont.)
Capa del Negocio
Es toda la parte lógica que resuelve o satisface las necesidades
de un dominio de negocio particular como la banca, finanzas,
ventas, etc. Dicha lógica es manejada por Enterpise JavaBeans.
Hay tres tipos de enterprise beans: beans de sesión, beans de
entidad y beans manejados por mensajes.
Capa de Aplicaciones Empresariales
Maneja el software del sistema de información empresarial
Maneja sistemas de infraestructura empresariales como
planificación de recursos empresariales (ERP), procesamiento de
transacciones del mainframe, sistemas de bases de datos, y otros
sistemas de información heredados.
Servidor de aplicaciones JEE Servidor HTTP (también denominado servidor Web o servidor de
páginas). Un ejemplo, el servidor Apache. Contenedor de aplicaciones o contenedor Servlet/JSP. Un ejemplo,
Tomcat (que incluye el servicio anterior sobre páginas) Contenedor Enterprise Java Beans, que contiene aplicativos Java de
interacción con bases de datos o sistemas empresariales. Un ejemplo es JBoss que contiene a los anteriores (servidor de páginas web y contenedor de aplicacione web).
Basado en peticiones y respuestas: significa que el cliente (por ejemplo un navegador) inicia siempre la conexión (por ejemplo, para pedir una página). No hay posibilidad de que el servidor realize una llamada de respuesta al cliente (retrollamada). El servidor ofrece la respueta (la página) y cierra la conexión. En la siguiente petición del cliente se abre una conexión y el ciclo vuelve e empezar: el servidor devuelve el recurso y cierra conexión.
Sin estado: el servidor cierra la conxsión una vez realizada la respuesta. No se mantienen los datos asociados a la conexión. Más adelante veremos que hay una forma de persistencia de datos asociada a la "sesión".
Servidor de aplicaciones JEE
Escenarios de Ejecución
Escenario multicapa
Escenario cliente Stand-Alone
Escenario Centrado en la Web
Escenario Centrado en la Web MultiCapa
Escenario B2B (Business to Business)