Download diplomados tics - E-campus :: FCA-UNAM
Document related concepts
no text concepts found
Transcript
5.4. Especificación J2EE (Java 2 Enterprise Edition) Java Platform Enterprise Edition o Java EE (anteriormente conocido como Java 2 Platform Enterprise Edition o J2EE hasta la versión 1.4), es una plataforma de programación para desarrollar y ejecutar software de aplicaciones en Java con arquitectura de n niveles distribuidos, basándose ampliamente en componentes de software modulares ejecutándose sobre un servidor de aplicaciones. Esta tecnología soporta una gran variedad de tipos de aplicaciones, desde aplicaciones Web de gran escala, hasta pequeñas aplicaciones cliente-servidor. El objetivo principal de la tecnología J2EE es crear un simple modelo de desarrollo para aplicaciones empresariales utilizando componentes basados en el modelo de aplicación. En este modelo dichos elementos utilizan servicios proporcionados por el contenedor, que de otro modo tendrían que estar incorporados en el código de la aplicación. Pero observa que esto podría no ser lo ideal para todos los escenarios: por ejemplo, una pequeña aplicación se cubriría mejor utilizando una solución de la tecnología Java de peso ligero utilizando Servlets y JSPs en lugar de toda la arquitectura J2EE. 5.4.1. JSPs - 5.4.2. Servlets Las aplicaciones J2EE están integradas de diferentes componentes. Uno de ellos es una unidad de software funcional auto-contenido que se ensambla dentro de una aplicación J2EE con sus clases de ayuda y archivos y que se comunica con otros elementos de la aplicación. La especificación J2EE define los siguientes componentes J2EE: Las aplicaciones clientes y los applets son componentes que se ejecutan en el lado del cliente. Los Servlets y los JSPs de Java son componentes Web que se ejecutan en el lado del servidor. Los Enterprise Java Beans son componentes de negocio que se ejecutan en el servidor de aplicación. Todos esos componentes se ensamblan en una aplicación J2EE; se verifica que estén bien formados y que cumplan la especificación J2EE, y se despliegan en el entorno de producción, donde se ejecutan y son controlados por el servidor de aplicaciones J2EE. Hablando de los componentes Web de J2EE en particular, pueden ser servlets o páginas JSP. Los servlets son clases Java que procesan dinámicamente las peticiones y construyen las respuestas. Las páginas JSP son documentos basados en texto que se ejecutan como servlets pero permiten una aproximación más natural para crear contenido estático. Las páginas HTML y los applets se juntan con los componentes Web durante el ensamble de la aplicación, pero la especificación J2EE no los considera como sus componentes propios. De forma similar, las clases de utilidades del lado del servidor también se unen a los componentes Web como páginas HTML, pero tampoco se consideran como componentes J2EE. 5.4.3. Enterprise JavaBeans Los Enterprise JavaBeans (también conocidos como EJB) son una de las API que forman parte del estándar de construcción de aplicaciones empresariales J2EE de Sun Microsystems (ahora JEE 5.0). Su especificación define y detalla cómo los servidores de aplicaciones proveen objetos desde el lado del servidor que son, precisamente, los EJBs: Existen tres tipos de EJB: EJB de Entidad (Entity EJB): su objetivo es encapsular los objetos del lado del servidor que almacenan los datos. Los EJB de entidad presentan la característica fundamental de la persistencia: Persistencia gestionada por el contenedor (CMP): el contenedor se encarga de almacenar y recuperar los datos del objeto de entidad mediante el mapeo de una tabla de la base de datos. Persistencia gestionada por el bean (BMP): el propio objeto entidad se encarga, mediante una base de datos u otro mecanismo, de almacenar y recuperar los datos a los que se refiere, por lo cual, la responsabilidad de implementar los mecanismos de persistencia es del programador. EJB de Sesión (Session EJB): gestionan el flujo de la información en el servidor. Generalmente sirven a los clientes como una fachada de los servicios proporcionados por otros componentes disponibles en el servidor. Puede haber dos tipos: con estado (stateful): Los beans distribuidos que poseen un estado se llaman beans de sesión con estado. Éste no es persistente, pero el acceso al bean se limita a un solo cliente. sin estado (stateless): Los beans de sesión sin estado son objetos distribuidos que carecen de estado asociado permitiendo por tanto que se acceda a ellos concurrentemente. No se garantiza que los contenidos de las variables de instancia se conserven entre llamadas al método. EJBs dirigidos por mensajes (Message-driven EJBs): son los únicos beans con funcionamiento asíncrono. Usando el Java Messaging System (JMS), se suscriben a un tema (topic) o a una cola (queue) y se activan al recibir un mensaje dirigido a dicho tema o cola. No requieren la creación de una instancia por parte del cliente. 5.4.4. Componentes de servicio Además de los componentes principales (componentes del cliente, componentes Web y componentes del negocio), J2EE incluye servicios estándar y tecnologías de soporte como: Java Database Connectivity (JDBC) es una tecnología que proporciona acceso a sistemas de bases de datos relacionales. Java Transaction API (JTA) o Java Transaction Service (JTS) proporciona soporte para transacciones a los componentes J2EE. Java Messaging Service (JMS) se utiliza para la comunicación asíncrona entre componentes J2EE. Java Naming y Directory Interface (JNDI) proporcionan accesos a nombres y directorios.