Lógica y Persistencia
El proyecto bookstore-logic
En el proyecto bookstore-logic se encuentran las fuentes de la lógica y la persistencia del Ejemplo Book. La figura 1 muestra los distintos paquetes y su contenido.
Los archivos BookLogic.java
, AuthorLogic.java
y EditorialLogic.java
son beans de sesión (EJBs) sin estado. Estos encapsulan la lógica de negocio de la aplicación y su ciclo de vida es manejado por el servidor de aplicaciones. No mantienen un estado con el cliente que los invoca. En este ejemplo, la responsabilidad de los beans de sesión es la de invocar a la persistencia para recuperar la información de la base de datos y la de manejar las relaciones shared entre las clases. Por ejemplo, los autores de un libro o los libros de un autor.
La persistencia en este ejemplo está implementada utilizando el ORM (object-relational mapping) JPA.
Figura 1.
Para realizar sus tareas, la clase XYZLogic depende de la clase XYZPersistence correspondiente. Tanto la clase XYZLogic como la clase XYZPersistence dependen de las clases XYZEntity que son las clases donde se hace el mapeo de los datos a las tablas de la base de datos utilizando JPA.
Para ejecutar queries en la base de datos, las clases de la Persistencia utilizan de JPA la clase Query y la clase EntityManager.