Está en la página 1de 6

EJB Enterprise JavaBeans

Jonnathan Andres Zhunio Morocho


Universidad Politécnica Salesiana
Cuenca Ecuador
jzhuniom@est.ups.edu.ec

Abstract--. This document presents an introduction to Enterprise JavaBeans (EJB). It is


important to know that, at present, the transactions through the applications that use the databases are in
great demand, so it is really necessary to work with persistence. To understand the concept, this document
has an explanation about the work done by EJB, using the different tools offered by Java.
Key words: , EJB, web applications, persistence, beans

I. Introducción
Antes de proseguir con los conceptos de EJB, es importante entender el concepto de

persistencia. Se entiende por persistencia a la acción de preservar la información de un

objeto de forma permanente, pero a su vez se refiere también a la recuperación de dicha

información para que esta pueda ser nuevamente utilizada. En el caso de persistencia de

objetos la información que persiste en la mayoría de los casos son los valores que

contienen los atributos en ese momento, no necesariamente la funcionalidad que

proveen sus métodos. (“Persistencia en Java”, 2012)

Por otra parte, los beans empresariales son componentes Java EE que implementan la

tecnología de Enterprise JavaBeans (EJB). Beans Enterprise se ejecutan en el

contenedor EJB, un entorno de ejecución dentro de GlassFish Server. Aunque es

transparente para el desarrollador de la aplicación, el contenedor EJB proporciona

servicios de nivel del sistema, como las transacciones y la seguridad, a sus beans

enterprise. (“Web Services”, 2015)

Estos datos persistentes se denominan entidades. Una entidad se refiere a una colección

lógica de los datos que se pueden almacenar o recuperar como un todo. Por ejemplo, en

una aplicación bancaria, Cliente y Cuenta Bancaria pueden ser tratados como entidades.

Nombre del cliente, dirección del cliente, etc. pueden ser lógicamente agrupados para

representar una entidad Cliente. De manera similar Número de cuenta, saldo total, etc.
pueden ser lógicamente agrupados bajo la entidad Cuenta Bancaria. (“Introduction to

Java Persistence API”, 2014)


II. Marco Teórico
1.1 EJB
Escrito en el lenguaje de programación Java, un bean empresarial es un componente de

servidor que encapsula la lógica de negocio de una aplicación. La lógica de negocio es

el código que cumple con el propósito de la aplicación. (“Web Services”, 2015)

1.2 Ventajas de EJB


Según Érika Aizaga y Federico Dominguez, en su investigación sobre el Módulo

StoreFront de Eguana, EJB nos proporciona 3 principales beneficios:

En primer lugar, el contenedor EJB proporciona servicios de nivel del sistema para los

beans empresariales, el desarrollador de beans puede concentrarse en resolver

problemas de negocios. El contenedor EJB, más que el desarrollador del bean, es

responsable de los servicios a nivel del sistema, como la gestión de transacciones y la

autorización de seguridad.

En segundo lugar, porque los beans en lugar de los clientes contienen la lógica de

negocio de la aplicación, el programador cliente puede centrarse en la presentación del

cliente. El desarrollador de cliente no tiene que codificar las rutinas que implementan

reglas de negocio o bases de datos de acceso.

En tercer lugar, porque los beans empresariales son componentes portátiles, el

ensamblador de aplicaciones puede crear nuevas aplicaciones de los beans existentes.

Siempre que utilizan las API estándar, estas aplicaciones se pueden ejecutar en cualquier

servidor compatible con Java EE.

1.3 Tipos de EJB

De acuerdo con la Documentación de Java Sun JEE 5.0, existen tres tipos de EJB:

1.3.1 EJB de Entidad (Entity EJB):

Su objetivo es encapsular los objetos del lado del servidor que almacena

los datos. Los EJB de entidad presentan la característica fundamental de la


persistencia: (nota: en la documentación de Java para JEE 5.0, los entity beans

desaparecen, porque son remplazados por Java Persistence API o JPA)

1.3.1.1 Persistencia gestionada por el contenedor

(CMP):

El contenedor se encarga de almacenar y recuperar los

datos del objeto de entidad mediante el mapeo o vinculación de

las columnas de una tabla de la base de datos con los atributos del

objeto.

1.3.1.2 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.

1.3.2 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:

1.3.2.1 Con estado (stateful):

En un bean de sesión con estado, las variables de instancia

del bean almacenan datos específicos obtenidos durante la

conexión con el cliente. Cada bean de sesión con estado, por

tanto, almacena el estado conversacional de un cliente que

interactúa con el bean. Este estado conversacional se modifica

conforme el cliente va realizando llamadas a los métodos de


negocio del bean. El estado conversacional no se guarda cuando

el cliente termina la sesión.

1.3.2.2 Sin estado (stateless):

Los beans de sesión sin estado son objetos distribuidos

que carecen de estado asociado permitiendo por tanto que se los

acceda concurrentemente. No se garantiza que los contenidos de

las variables de instancia se conserven entre llamadas al método.

1.3.3 EJB Dirigidos por Mensajes (Message-driven EJB):

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 de su instanciación por parte del cliente.

1.4 Funcionamiento de los componentes EJB:

El funcionamiento de los componentes EJB se basa fundamentalmente

en el trabajo del contenedor EJB. El contenedor EJB es un programa Java que

corre en el servidor y que contiene todas las clases y objetos necesarios para

el correcto funcionamiento de los enterprise beans. (“Introducción a la

Tecnología EJB”, 2004)

Figura 1. 1 Componentes EJB.

III. Conclusiones
•EJB nos permite encapsular la lógica del negocio de una aplicación, de

forma que se vuelva menos compleja la programación de dicha aplicación,

efectivizando el trabajo.

• EJB nos permite trabajar de manera unánime sobre una aplicación, puesto

que, al encapsular los distintos datos en una entidad, el almacenamiento y la

recuperación se liberan de todo tipo de ambigüedad y el trabajo se vuelve mucho más

eficiente.

• Es importante tener en cuenta siempre que EJB deben trabajar juntamente

con la base de datos con el fin de que las distintas operaciones a realizar tengan

concordancia unas con otras

IV. Referencias
• ESPE, (2012). Persistencia en Java. Disponible en Internet

(https://sites.google.com/a/espe.edu.ec/programacion-ii/home/p ersistencia-en-java)

(22 noviembre 2015).

• ClubEnsayos, (2015). WebServices. Disponible en Internet

(https://www.clubensayos.com/Tecnología/WebServices/23490 94.html) (22

noviembre 2015

• Sargue, (2013). Utilizando EJB y JPA. Disponble en Internet

(https://sargue.net/2012/07/17/utilizando_ejb_y_jpa/) (23 noviembre 2015)

• Aizaga, E y Dominguez, F, (2010). Módulo StoreFront de Eguana

Escuela Politécnica Superior del Litoral.

• JTech, (2004). Introducción a la tecnología EJB. Disponble en Internet

(http://www.jtech.ua.es/j2ee/2003-2004/abierto-j2ee- 2003-2004/ejb/sesion01-

apuntes.htm) (32 noviembre 2015).

También podría gustarte