Crear un proyecto JPA

Tutorial de JPAEn la actualidad existe diversos IDE’s que nos permitirán crear proyecto JPA y en general todos ofrecen las mismas opciones por lo que en realidad sea cual sea el IDE que quieras utilizar tendrá el mismo resultado, sin embargo, para este tutorial utilizaremos NetBeans, el cual lo puedes descargar en http://netbeans.org. NetBeans es un proyecto OpenSource por lo que lo podrás descargar libremente y sin ningún costo.

Ahora bien, para maximizar la portabilidad y facilitar las librerías utilizaremos un Maven, la cual es una herramienta para la gestión de dependencias y construcción de proyectos similar a Apache Ant, aunque más potente. Si quieres aprender más de Maven te recomiendo el libro Maven: The Definitive Guide.

Por el momento no te preocupes si no has trabajado con NetBeans o Maven, ya que aquí mismo te diremos paso a paso como hacer todos los pasos para configurar tu proyecto.

Creando un proyecto Maven

Lo primero que tendremos que hacer será abrir NetBeans y en el menú superior pincharemos la opción File >New Project  y nos arrojara la siguiente pantalla:

Projecto JPA - Nuevo

De la lista de categorías seleccionemos Maven y en la lista Projects, selecciones Java Application, seleccionamos Next y nos arrojara la siguiente pantalla:

Proyecto JPA - Maven

En esta nueva pantalla configuraremos el nombre del proyecto y los demás datos necesarios para la generación de los Artefactos de Maven, en este caso, capturemos los datos como aparecen en la imagen. No te preocupes si no comprendes Maven, solo sigue la guía y te explicaremos todo lo que sea relevante para la configuración. Finalmente, presiona Finish para finalizar el wizard y crear nuestro proyecto.

Ya en este punto nuestro proyecto JPATutorial esta creado y lo puedes visualizar en la sección izquierda del IDE. Por ahora es tan solo un proyecto Java por lo que solo tendremos disponibles las librerías del JRE Estándar Edition. JPA por otra parte es parte de la especificación de Java EE por lo que será necesario realizar la importación de las librerías adecuadas. Es en este punto donde Maven hace su magia.

Para importar las librerías de JPA será necesario seleccionar la carpeta Dependencias que aparece dentro del proyecto y seleccionamos la opción Add Dependency y nos aparecerá una pantalla como la siguiente:

Projecto JPA - Agregar dependencia

Escribimos EclipseLink en el campo Query y presionamos enter, esto iniciara una búsqueda de todas las librerías registradas en los repositorios de Maven, la primera vez que realizamos una búsqueda puede tardar un tiempo considerable, debido a que debe de descargar todo el listado de dependencias. Una vez que arroja los resultados, expandimos el ítem org.eclipse.persistence : eclipselink, y nos arrojara una serie de artefactos, seleccionamos la última versión disponible  del JAR, en este caso, sería la 2.6.4 [jar] y presionamos Add, este proceso iniciara con la descarga de las dependencias de forma automática y las registrara en nuestro proyecto.

Tras esperar un momento a que se descarguen las librerías, podrás ver dentro de la carpeta Dependencies todas las librerías descargadas, y tu proyecto se deberá de ver de la siguiente manera:

Proyecto JPA - Eclipselink

Repetiremos los pasos anteriores para agregar el driver de MySQL, y así poder establecer conexión más adelante, en este caso buscamos mysql y seleccionamos el ítem mysql: mysql-connector-java, seleccionamos la versión que adapte a la versión de MySQL que estamos utilizando, en este caso es la 6.0.4 [jar]

Finalmente, el archivo pom.xml que se encuentra en la carpeta Project Files se vera de la siguiente manera:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.obb.jpa</groupId>
    <artifactId>JPATurorial</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <dependencies>
        <dependency>
            <groupId>org.eclipse.persistence</groupId>
            <artifactId>eclipselink</artifactId>
            <version>2.6.4</version>
        </dependency>
    </dependencies>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
</project>

NOTA: El archivo POM es generado para todos los proyectos Maven y es desde este archivo donde se configuran las dependencias, las instrucciones de generación del proyecto y hasta la forma de ejecución/despliegue de la aplicación.

Tambíen los quiero invitar a ver mi curso de JPA, donde explico todos estos temas aplicados con API REST, https://codmind.com/courses/jpa

👉👉 Los invito a mi Curso de Mastering JPA, donde habla de todos estos temas y crearemos un API REST para probar todos los conceptos de persistencia.
👈👈

En este punto, nuestro proyecto JPA está listo para poder empezar a utilizar JPA, en la siguiente sección nos introduciremos en la clase EntityManager y la configuración del archivo persistence.xml

NOTA: Este artículo es solo una sección del Tutorial de JPA, para ver el contenido completo de este tutorial regresa al Índice en el botón de abajo.


AnteriorÍndiceSiguiente

19 thoughts to “Crear un proyecto JPA”

  1. Hola Ingeniero, estoy muy agradecido por el material que está publicando acá.

    ¿Es posible colaborar de alguna forma con estas notas respecto a faltas de ortografía o mejoras de redacción (en el entendido de que usted decide qué recomendaciones aceptar)?

    Saludos

    1. Maven de utiliza para administrar las dependencias (librerías), en caso de no utilizarlo tendrías que agregar manualmente las librerías (jar) al proyecto. Al final el resultado en tiempo de ejecución es el mismo.
      saludos.

  2. Buenos días Oscar, tus cursos me parecen buenisimos, queria preguntar si tienes algun curso de auditoria de base de datos con Hibernate Envers y como puedo mostrarlas mediante @Entity creadas y servicios rest

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *