28 abr 2008

Diferencias entre Session Bean y Entity Bean

Diferencias entre los Session Bean y los Entity Bean

Session Bean

  • Recurso privado por cada cliente.
  • El cliente afecta el estado del Bean.
  • Sin persistencia.
  • Tiempo de vida controlado por las operaciones del cliente.
  • Creado por el usuario.
  • Mono-hilo.

Entity Bean

  • Concurrencia de acceso entre múltiples clientes.
  • El Bean representa el estado de los datos.
  • Persistencia.
  • El tiempo de vida corresponde al dato persistente.
  • Localizado para el usuario, no creado.

27 abr 2008

EJB, pequeños datos

EJB, Enterprise Java Beans, dota al programador de un modelo de abstracción de los problemas generales de una aplicación empresarial, entre estos encontramos la concurrencia, transacciones, persistencia y seguridad. Permitiendo al programador centrarse en la lógica de negocios y no en reinventar la rueda. No son Java Beans, estos últimos no funcionan con Invocación de Métodos Remotos (RMI, Remote Method Invocation) .

Los EJB, son una de las
API de la JEE 5.0 de Sun Microsystems . Su especificación detalla cómo los servidores de aplicaciones proveen objetos desde el lado del servidor.

Un concepto que debemos definir antes de explicar los diversos EJB es el de contenedor EJB, este reside en un servidor de aplicaciones (no es tan simple como prender Tomcat y esperar que todo funcione, JBoss sí cuenta con esta funcionalidad), y es el encargado de administrar los EJB.

Existen diversos tipos de EJB:

  • Entity EJB (persistencia) Model Bussines Data

  • Encapsula los objetos en el servidor que almacenan datos, existen dos tipos:
      • Gestión de Persistencia por el Contenedor (CMP)
        • Almacena y recupera datos mediante un mapeo a la BD. El contenedor es el encargado de realizar las tareas, configurando algunos archivos.
      • Gestión de Persistencia por el Bean (BMP)
        • El propio objeto es el que se encarga de almacenar y recuperar, es ocupación del programador.
  • Session EJB (Gestión de flujo de información) Model Bussines Processes

  • Sirve a los clientes como interfaz entre otros componentes del servidor, también son dos:
      • Con estado (Stateful)
        • Mantienen sus valores entre llamadas y son accesibles solo a un cliente.
      • Sin estado (Stateless)
        • No mantienen sus valores entre llamadas, pero son accesados concurrentemente, no garantiza que los contenidos de las variables de instancia se conserven entre llamadas a un método.

  • Message Driven EJB (función asíncrona) Model Messaging System

  • Usa el JMS, suscriben a un tema o cola y se activan al recibir un mensaje dirigido a dicho tema o cola. No son instanciados por parte del cliente.

    Este es mi pequeño resumen de EJB, en breve profundizaremos más en estos temas.

26 abr 2008

Comenzando

Saludos:

Este es mi nuevo blog, que en breve contendrá entradas sobre tecnologías, gadgets, informática y cultura relacionada con las tecnologías de información y ciencias computacionales.

Entre otras utilizaré este blog para hacer referencia a los diversos problemas diarios de trabajar con Java, Flex, Hibernate, Eclipse y JBoss. La finalidad de este punto será la de proveer un repositorio en español de problemas y sus respuestas que facilitarán la tarea de diseñadores y programadores en el día a día de nuestra labor, invirtiendo en búsquedas por diversos foros en internet, en múltiples idiomas,
con número significante de entradas que no explican de manera sencilla la solución para descubrir al final si el problema es el mismo que el nuestro y lo peor, experimentar el amargo sabor de una pregunta sin respuesta.

En suma, el blog no solo responderá estás problemáticas, también servirá como referencia a una variedad de temas sobre los cuales escribo resúmenes para facilitar su búsqueda en el futuro por un medio electrónico.

Se oye como un blog raro, pero esas son las funcionalidades que busco, ayudar a la gente de habla hispana a solucionar sus problemas de programación en los lenguajes y tecnologías mencionados, y al mismo tiempo, auxiliarme de un medio de almacenamiento en formato web, para poder acceder a él desde cualquier ubicación, y así retroalimentar mis conocimientos y experiencias.

Hasta la vista.