La especificación de Java™ EE hace que la creación de aplicaciones
EJB 3.1 sea más sencilla que con las especificaciones EJB anteriores.
Se han añadido las características siguientes en EJB 3.1 (JSR 318):
- Beans singleton (@Singleton)
- Antes de EJB 3.1 no era fácil compartir datos a través la aplicación; la monoinstancia de EJB 3.1 es una
monoinstancia de toda la aplicación.
- El contenedor o el Desarrollador de beans pueden gestionar la simultaneidad
Java EE estiliza el desarrollo EJB de las formas siguientes:
- Son necesarias menos clases e interfaces
- Las interfaces inicial y de objeto ya no son necesarias, sólo necesita la interfaz de negocio
- No es necesario implementar javax.ejb.SessionBean
- No es necesario declarar las excepciones comprobadas
- Descriptores de despliegue opcionales
- Las anotaciones proporcionan definiciones de componentes e inyecciones de dependencia
- Búsquedas simples
- El nuevo método de la interfaz EJBContext() sustituye llamadas JNDI
- Persistencia ligera para correlación relacional de objeto
- Las entidades son POJO que proporcionan una vista orientada a objetos de los datos almacenados en bases de datos
relacionales
- Nueva clase de interceptores (novedad de Java EE 5)
- Los interceptores son objetos que pueden interceptar una llamada a un método de negocio (para manejar la seguridad,
por ejemplo)
- Similar en objetivo y acción al filtro de servlet o al manejador de servicios Web
- Proporcionan una forma limitada de programación orientada a aspecto