2010-11-28 24 views
12

Necesito alguna aclaración. Sé cómo trabajar con JSF y sus beans de sesión correspondientes, pero me estoy confundiendo con EJB. ¿Cuál es la diferencia entre los beans introducidos con EJB y los beans de sesión utilizados con JSF (por ejemplo, conozco los beans de sesión sin estado/completos y los beans de entidad, el administrador de entidades, etc.). Lo que simplemente no entiendo es cuándo usar EJB y cuándo usar beans jsf. Además de los beans de entidad, ambos beans de sesión stateful/less de ejb parecen ser similares a los beans de sesión de jsf. He leído acerca de inyectar ejb's en jsf, pero ¿por qué no usar simplemente ejb junto con beans jsf? Espero que puedas entender mi confusión. Gracias.diferencia entre beans jsf y beans ejb

Respuesta

6

Existe cierta confusión entre los diferentes tipos de beans administrados en Java EE. Para aumentar la confusión, Java EE 6 introdujo un tercer tipo de bean gestionado: un bean CDI.

En esta respuesta intento explicar las diferencias y similitudes un poco: How do CDI and EJB compare? interact?

En pocas palabras, dijo, JSF gestionado principalmente granos no cuenta con soporte para transacciones, que es algo que a menudo es necesario cuando se trabaja con la lógica de negocio y especialmente JPA.

También tenga en cuenta que el término session como beans administrados de ámbito de sesión es un tipo de sesión completamente diferente a la que se refiere el término en beans de sesión stateless y statefull.

7

Alexis

Primero tiene que saber la diferencia entre frijol JSF y EJB granos.

JSF Bean: granos JSF son clases POJO que solían leer el valor del componente de JSF. hay dos tipos de beans en jsf

Bean administrado es sobre cómo se crea e inicializa un bean Java. Como sabes, jsf usa el modelo de inicialización perezosa. Significa que el bean en el ámbito particular se crea y se inicializa no en el momento en que se inicia el alcance, sino a pedido, es decir, cuando se necesita por primera vez el bean.

Backing bean es sobre el papel que desempeña un bean administrado en particular. Esta es una función para ser una representación del lado del servidor de los componentes ubicados en la página. Por lo general, los beans de respaldo tienen un alcance de solicitud, pero no es una restricción.

EJB Bean es un componente del lado del servidor que encapsula la lógica comercial de una aplicación. La lógica de negocios es el código que cumple el propósito de la aplicación.

Principalmente hay tres tipos de sesión de beans-

1.Statefull bean de sesión

sesión 2.Stateless frijol

3.Singleton bean de sesión (EJB 3.1)

-1

Hay otra respuesta gread en el sitio donde se explican las diferencias de CDI y EJB. Ayuda mucho cuando finalmente captas la imagen completa. Where to use EJB 3.1 and CDI?

Cuestiones relacionadas