Tutorial de persistencia de java

30
UNIVERSIDAD TECNICA DEL NORTE FACULTAD FICA ESCUELA CISIC Primero para hacer esta práctica deberemos tener instalado: My SQL Net Beans. Una vez ya instalados las herramientas necesarias para realizar esta práctica procederemos a iniciar el programa My SQL Daremos doble clic en el Icono My SQL Una vez ya dentro del software de My SQL Luego procederemos a la creación de la base de datos

Transcript of Tutorial de persistencia de java

Page 1: Tutorial de persistencia de java

UNIVERSIDAD TECNICA DEL NORTE

FACULTAD FICA

ESCUELA CISIC

Primero para hacer esta práctica deberemos tener instalado:

My SQL Net Beans.

Una vez ya instalados las herramientas necesarias para realizar esta práctica procederemos a iniciar el programa My SQL

Daremos doble clic en el Icono My SQL

Una vez ya dentro del software de My SQL Luego procederemos a la creación de la base de datos

Hacemos un clic en File y luego otro clic en Open Script

Page 2: Tutorial de persistencia de java

Luego buscaremos el script de la base de datos en nuestro ordenador previamente ya guardado

Seleccionamos el script de la base de datos y presionamos el botón Abrir

Page 3: Tutorial de persistencia de java

Script Notas1create database notas1;

use notas1;/*==============================================================*//* DBMS name: MySQL 5.0 *//* Created on: 07/04/2014 8:51:16 *//*==============================================================*/

/*==============================================================*//* Table: TAB_ESTUDIANTES *//*==============================================================*/create table TAB_ESTUDIANTES( ID_ESTUDIANTE integer not null auto_increment, CEDULA varchar(10), NOMBRES varchar(40), APELLIDOS varchar(40), DIRECCION varchar(40), TELEFONO varchar(40), primary key (ID_ESTUDIANTE));

/*==============================================================*//* Table: TAB_MATERIAS *//*==============================================================*/create table TAB_MATERIAS( ID_MATERIA integer not null auto_increment, NOMBRE_MATERIA varchar(40),

Page 4: Tutorial de persistencia de java

primary key (ID_MATERIA));

/*==============================================================*//* Table: TAB_NOTAS *//*==============================================================*/create table TAB_NOTAS( ID_NOTA integer not null auto_increment, ID_ESTUDIANTE integer, ID_MATERIA integer, NOTA1 numeric(8,2), NOTA2 numeric(8,2), primary key (ID_NOTA));

alter table TAB_NOTAS add constraint FK_REFERENCE_1 foreign key (ID_ESTUDIANTE) references TAB_ESTUDIANTES (ID_ESTUDIANTE) on delete restrict on update restrict;

alter table TAB_NOTAS add constraint FK_REFERENCE_2 foreign key (ID_MATERIA) references TAB_MATERIAS (ID_MATERIA) on delete restrict on update restrict;

Luego procederemos a ejecutar el script para la creación de la base de datos presionamos el botón Execute o presionamos la tecla F6

Una vez realizado los pasos anteriores se verá así la base de datos

Page 5: Tutorial de persistencia de java

Bueno luego de crear la base de datos en My SQL procederemos a iniciar el programa NetBeans.

Daremos doble clic en el icono de NetBeans

Una vez ya dentro del software de NetBeans Luego procederemos a la creación del nuevo proyecto.

Hacemos un clic en File y luego otro clic en New Proyect

Page 6: Tutorial de persistencia de java

Aquí procederemos a realizar la creacion del proyecto luego seleccionamos java/java Aplication y de alli presionamos el boton Next

Es esta ventana del software pondremos el nombre de como se va a llamar el proyecto y luego precionamos el boton Finish

Page 7: Tutorial de persistencia de java

Una vez creado el proyecto, el proyecto se vera asi

De allí procederemos a insertar la librería de la base de datos en este caso será de My SQL

Hacemos clic derecho en Libraries luego en add to library

Page 8: Tutorial de persistencia de java

En esta ventana buscaremos la librería de My SQL y si no la encontramos la importamos la librería

Daremos un clic en Import

Page 9: Tutorial de persistencia de java

Buscaremos la librería correspondiente y luego seleccionamos la librería y presionamos el botón Import Library

De allí seleccionamos la librería y luego la importamos en el proyecto seleccionamos t presionamos el botón Add Library

Page 10: Tutorial de persistencia de java

Nos quedara de esta manera el proyecto

Luego vamos a añadir las entidades para la conexión de la base de datos con el proyecto en NetBeans

Porcederemos a hacer clic derecho en el proyecto luego en New/Entity Classes from DataBase

Page 11: Tutorial de persistencia de java

Luego hacemos clic en la pestaña que está en la figura

Aquí insertaremos la conexión de la base de datos con NetBeans

Page 12: Tutorial de persistencia de java

Una vez añadido la conexión de la base de datos con el proyecto procederemos pulsar el botón Next

Luego procederemos a ingresar los datos que nos piden en la ventana con en nombre de la Base de Datos y también pulsamos el botón de Test Conection para verificar la conexión de la base de datos con el proyecto y de allí presionamos el botón Next

Page 13: Tutorial de persistencia de java

En esta ventana solo presionamos el botón Finish

Una vez realizado la conexión no saldrá una ventana para añadir las entidades del proyecto

Luego seleccionamos las tablas y le presionamos el botón Add

Page 14: Tutorial de persistencia de java

Nos quedara de esta manera la ventana y luego presionamos el botón Next

Una vez añadido las tablas vamos a la creación del paquete de las entidades es allí en donde se van a guardar las tablas también podemos editar los nombres de las tablas para manejar fácilmente las tablas para luego presionar el botón Next

Page 15: Tutorial de persistencia de java

Aquí en esta ventana solo cambiaremos en Colection Type por java.util.List luego presionamos el botón Finish

En si el proyecto nos quedara de esta manera

Page 16: Tutorial de persistencia de java

Una vez ya creada las entidades procederemos a la inserción de los JPA Cotroller

En esta ventana añadiremos las tablas de los JPA en el proyecto. Y luego pulsamos el botón Add.

Page 17: Tutorial de persistencia de java

Nos quedara de esta manera y luego presionamos el botón Next

De allí en la ventana tendremos que editar el nombre de modelos.entidades a modelos.entidades.dao, luego presionamos el botón Finish

Page 18: Tutorial de persistencia de java

En si todo el Proyecto nos queda de esta manera

Una vez ya creado todas las entidades y los JPA Controller procederemos a la creación de clase para hacer las respectivas pruebas.

Hacemos clic derecho en el proyecto presionamos New y luego Java Class

Page 19: Tutorial de persistencia de java

Es esta ventana pondremos el nombre de la clases y el nombre del paquete en el que se va a guardar la clase a crear y luego presionamos el botón Finish.

Nos quedara el proyecto en si de esta manera.

Page 20: Tutorial de persistencia de java

Luego en esta ventana hacemos clic derecho en cualquier lugar del proyecto y no vamos a Insert Code

De allí nos vamos a User Entity Manager en este caso nos salió al final del menú

Page 21: Tutorial de persistencia de java

Nos saldrá de esta forma la ventana y el código

Seleccionamos el código siguiente para eliminarlo ya que no vamos a necesitarlo.

Page 22: Tutorial de persistencia de java

Luego ingresaremos el siguiente código en la clase Prueba

También en el siguiente código no indica la forma de insertar, buscar, eliminar y editar un objeto en la base de datos desde el proyecto de NetBeans, Y así comprobamos que si está funcionando correctamente la conexión de la base de datos con el proyecto.

Código Prueba public void persist(Object object) { EntityManagerFactory emf = Persistence.createEntityManagerFactory("ControlNotas1PU"); TabMateriasJpaController dao=new TabMateriasJpaController(emf); //INSERTAR// TabMaterias mat=new TabMaterias();// mat.setNombreMateria("REDES I"); //SELECT// dao.create(mat); // try {// // for (Materias mat:dao.findMateriasEntities()){// System.out.println(mat.getIdMateria()+" - "+mat.getNombreMateria());// }// // } // DELETE// // dao.destroy(2);

Page 23: Tutorial de persistencia de java

// } catch (NonexistentEntityException ex) {// Logger.getLogger(Prueba.class.getName()).log(Level.SEVERE, null, ex);// }// }// //EDIT// Materias mat =dao.findMaterias(3);// System.out.println(mat.getNombreMateria());// mat.setNombreMateria("PORGRAMACION VISUAL");// try {// dao.edit(mat);// } catch (NonexistentEntityException ex) {// Logger.getLogger(Prueba.class.getName()).log(Level.SEVERE, null, ex);// } catch (Exception ex) {// Logger.getLogger(Prueba.class.getName()).log(Level.SEVERE, null, ex);// } }

El proyecto en sí no quedara de esta manera

Una vez ya echas las respectivas pruebas de inserción, de búsqueda, eliminación y editar probaremos que está correctamente yéndonos a la base de datos en este caso es de My SQL a haremos una búsqueda de todas las tablas y ver qué datos nomas están ingresados en cada tabla.

Esta es la tabla de estudiantes

Page 24: Tutorial de persistencia de java

Esta es la Tabla de Materias

Esta es la tabla de notas.

Page 25: Tutorial de persistencia de java

Como vemos está correctamente insertados los datos en cada tabla

Bueno de allí pasaremos al proyecto en NetBeans donde vamos hacer otra prueba de cómo sacar el promedio de las materias de cada alumno o estudiante.

Primero hacemos clic derecho en el paquete Pruebas y luego seleccionamos New/Java Class

Es esta ventana pondremos el nombre de la clase a crear. En este caso se llamara Prueba2 y luego presionamos el botón Finish

Page 26: Tutorial de persistencia de java

Nos quedara de esta manera la clase de Prueba2

En la clase Prueba2 vamos a Insertaremos el siguiente código para calcular el promedio de las materias de cada uno de los Estudiantes.

Código Prueba2 public static void main(String[]args){ EntityManagerFactory emf = Persistence.createEntityManagerFactory("ControlNotasPU"); //EstudiantesJpaController emf = Persistence.createEntityManagerFactory(emf); EstudiantesJpaController daoEst=new EstudiantesJpaController(emf); List<Estudiantes>lista=daoEst.findEstudiantesEntities();

Page 27: Tutorial de persistencia de java

for(Estudiantes e:lista){ System.out.println(e.getIdEstudiante()+","+ e.getNombres()); List<Notas>listaNotas=e.getNotasList(); for(Notas n: listaNotas){ System.out.println("\t"+n.getIdMateria().getNombreMateria()+","+n.getNota1()+","+n.getNota2()); } } System.out.println("--------------------------"); NotasJpaController notasDao=new NotasJpaController(emf); List<Notas> listNotas =notasDao.findNotasEntities(); for(Notas n: listNotas){ System.out.println(n.getIdEstudiante().getNombres()+","+ n.getIdMateria().getNombreMateria()+","+ n.getNota1()+","+n.getNota2()+","+n.getPromedio()); } }

Aquí nos quedara de esta manera

Una vez ya ingresado el código procederemos a ejecutarlo haciéndolo clic derecho en cualquier lugar del proyecto, seleccionamos y presionamos Run File

Page 28: Tutorial de persistencia de java

Esperamos que se ejecute el proyecto y nos mostrara en la pantalla el resultado del promedio de las materias de cada estudiante.