En este artículo mostraremos un ejemplos de la construcción de un pequeño proyecto el cual contendrá servicios RESTful, invocados vía jQuery, un sistema Backend sobre Java y una capa de persistencia con JPA2.
Los métodos que usa la capa de comunicación REST son los diferentes métodos que usa HTTP:
- GET para obtener y buscar datos
- POST para añadir datos
- PUT para actualizar datos
- DELETE para eliminar datos
La aplicación que usaremos como ejemplo será una simple gestión de usuarios, en la cual podremos realizar las operaciones básicas que antes hemos indicado, además de trabajar directamente con BBDD sobre una capa de persistencia en JPA2. La base de datos a usar no es determinante.
En esta entrada comenzaremos creando el proyecto .EAR con Maven2 el cual contendrá la siguiente estructura:
Como podemos ver el proyecto Maven contiene entradas para todos y cada uno de los proyectos EAR, EJB y WAR.
Backend (UserManagement-ejb)
Denotar que el componente EJB contiene los métodos de la capa de negocio con la gestión de la persistencia a través de JPA. Contendrá así los Interfaces, SessionBean, EntityBean y clases comunes, en este caso usadas para la encriptación y validación en Backend a los que se harán llamadas con inyección de dependencias.
Frontend (UserManagementREST)
Se emplea un proyecto WAR que contendrá la API REST completa, con los siguientes servicios:
A través del patrón fachada, establecemos estos métodos, su funcionamiento es el siguiente:
- El Servicio REST recibe una llamada JSON
- A través de inyección de dependencias EJB* se llama a validar y persistir los datos recibidos
- El proyecto EJB valida, persiste los datos con JPA y devuelve los datos.**
- Por último la interfaz REST devuelve los datos JSON al cliente.
Veamos el diagrama de funcionamiento:
En las siguientes entradas al blog, comentaremos paso a paso la creación de todos los proyectos, en este caso apoyándonos sobre el IDE Netbeans 8. Continuaremos con la segunda entrada, Parte II: creación de los proyectos sobre Netbeans 8
¡Saludos a todos y no os olvidéis de comentar y comartir!
Deja una respuesta