Búscalo aquí:

Trabajar con JPA (Java Persistence API ) en NetBeans

Cuando tienes planeado realizar un proyecto en Java en el cual tengas que trabajar con Bases de Datos, lo que primero se te viene a la mente es JDBC. Sin embargo, esa no es la única opción, puesto que Java provee su Java Persistence API - JPA - la cual se encarga de crear el modelo de tu base de datos abstrayendo por tí la capa de conexión a datos y dejándote a tí, la tarea de enfocarte en la capa de la lógica del negocio, es decir, te dedicarás únicamente a programar el código funcional!!! y esto lo puedes aplicar tanto en aplicaciones de escritorio como en aplicaciones web. sin dudas que a mi me ha traido bastantes beneficios. En este post mostraré de manera breve y concisa algunos alcances sobre el trabajo con JPA.

Realizaremos nuestro trabajo usando el IDE NetBeans y utilizando una Base de Datos en MySQL, aunque esto es independiente y se puede trabajar con cualquier IDE y motor de Base de Datos.

Primero que nada debemos partir teniendo una Base de Datos, sobre la cual realizaremos el trabajo, una vez que tenemos una, lo que debemos hacer es conectar nuestra base de datos con el IDE. En este caso, trabajaremos sobre una Base de Datos llamada fid.


Ahora, organizaremos nuestro proyecto en 3 capas: Entidades, dónde ubicaremos las entidades de cada clase correspondiente a cada tabla de la base de datos; Componentes, dónde ubicaremos el código de las funciones que trabajarán sobre las entidades; y Vista, dónde colocaremos nuestras interfaces de usuario y haremos las llamadas respectivas a nuestras funciones de la capa de componentes para que respondan a los requerimientos que el usuario final desee .

De esta manera, ahora podemos trabajar primero sobre nuestra capa de Entidades, para lo cual, crearemos un nuevo proyecto de categoria: Java y tipo: Biblioteca de Clases Java. A esta librería la llamamos fid.be. Creamos un paquete denominado entidades y dentro de él crearemos nuestras clases de entidad de la siguiente manera:


Despues de esto, nos aparecerá una ventana, en la cual, elegiremos la Base de Datos sobre la cual trabajaremos. Una vez hecho esto, nos apareceran todas las tablas disponibles pertenecientes a dicha Base de Datos, deberemos elegir aquellas con las deseemos trabajar (generalmente todas).


Al continuar, nos aparecerá una ventana como la que sigue.

Como pueden notar, nos hace falta crear una unidad de persistencia, esto es el paso más importante. Hacemos clic sobre el boton correspondiente, ante lo cual aparecerá una ventana para crear la correspondiente unidad de persistencias para el proyecto, a la cual denominaremos fid.bePU (nombre por defecto), además usaremos el ORM TopLink como nuestra biblioteca de persistencias (aunque puedes elegir la que más te guste). Además en las opciones de mapeo, usaremos java.util.list como nuestro tipo de colección de datos; y listo!!! Ahora tenemos nuestras clases de persistencias, además s eha creado un par de archivos muy importante, persistence.xml y fid_be.dbschema, dales un vistazo por ti mismo para que notes la información que almacenan.


Ahora pasamos a nuestra capa de Componentes, al igual que para nuestra anterior capa, creamos un nuevo proyecto de tipo libreria de clases, lo llamamos fid.bc y adjuntamos nuestra libería anteriormente creada (fid.be) y TopLink Essentials como librerias de fid.bc. Claro, en esta capa somos libres de hacer lo que realmente queramos, ya que podemos interactuar directamente con nuestra Base de Datos de una manera más transparente. En la siguiente imagen se muestra el entorno de la capa de Componentes.

Se ha construido la clase Acciones, en donde se pueden realizar las funciones que deseemos sobre nuestra capa de Entidades. En el ejemplo que se visualiza el método insertarPersona() que utiliza las funciones de persistencias (JPA) para crear un nuevo objeto e insertarlo en la base de datos.

Finalmente abordamos nuestra capa de Vista, creamos un nuevo proyecto, esta vez como lo deseemos, ya sea una aplicación web o de escritorio; le colocamos el nombre fid.gui. Una vez creado, agregamos como librerias los paquetes de nuestras 2 capas antes creadas, es decir fid.be y fid.bc. Acá deberemos ser capaces de desplegar nuestros requerimientos acerca de las vistas. En este caso, nuestra capa de vista estará representada por una solitaria clase main en dónde se hace el llamado respectivo a la función creada en la capa de Componentes.


Al ejecutar el proyecto, debería de quedar insertado el nuevo objeto en la tabla correspondiente de la Base de Datos. Como habrán podido notar no hemos utilizado el método insert (de manera directa) y de la misma manera puedes hacer reportes (select) o eliminar datos (delete) y todo tipo de funcionalidad sobre tu Base de Datos usando JPA. Dale una revisada a la documentación de esta API.

Espero les sea de utilidad, saludos.

Quieres leer más post como éste???...suscribete aquí!!!

3 comentarios:

  1. HOLA!!!! JORGE ,,, SERA QUE ME PODRIAS AYUDAR CON RESPECTO A LAS VISTAS ????

    ResponderEliminar
  2. Muchas gracias por el ejemplo fue de mucha utilidad.

    ResponderEliminar
  3. hola! GRACIAS X ESTE TUTO! loq no se como hacer o no lo puedo "ver" es: como "tomar" los datos de una tabla de la BD y "cargarla" en una Collection directamente. Tengo una Clase Hospital con un HashMap llamado empleados q contiene objetos de tipo:Empleado(atributos:nombre apellido,domicilio,password). y me gustaria q esten disponibles en el hashMap pero no como hacer! me podrias ayudar?? por favor GRACIAS!

    ResponderEliminar

Bienvenido a jcGeorge's Blog!!!

Por favor deja tu comentario, consulta o sugerencia, procura mantener habilitado tu perfil de Blogger o deja un enlace a tu blog o web.

Gracias por leer este blog!!!

Related Posts Plugin for WordPress, Blogger...