Tutorial Hibernate PDF
Tutorial Hibernate PDF
Se utilizaran MySQL como gestor de base de datos y Netbeans 6.9 como IDE para Java. Como primer paso abrimos MySQL Query Browser o cualquier herramienta que nos permita crear una base de datos:
Ingresamos los datos necesarios: usuario, contrasea, la direccin del servidor (en caso de querer trabajar con una base de datos en un servidor MySQL remoto se escribe la direccin IP en lugar de localhost) y el puerto del servidor MySQL. Como estamos usando MySQL Query Browser tendramos la siguiente pantalla:
Una vez abierto el Script, tenemos una base de datos sencilla que solo tiene cuatro tablas: Cliente, Producto, DetalleVenta y NotaVenta.
Aqu les dejo el cdigo SQL del Script utilizado: create database tutorial; use tutorial; CREATE TABLE Cliente( cod CHAR(3)NOT NULL PRIMARY KEY, nombre CHAR(25) ); INSERT INTO Cliente VALUES ('100','grupo norte'); INSERT INTO Cliente VALUES ('101','Angel Castillo'); CREATE TABLE Producto( cod CHAR (3)NOT NULL PRIMARY KEY, descripcion CHAR(60), precio float ); INSERT INTO Producto VALUES('200','rodamiento',300); INSERT INTO Producto VALUES('201','engranaje',450); INSERT INTO Producto VALUES('202','rotor',560);
CREATE TABLE NotaVenta( nro CHAR(3)NOT NULL PRIMARY KEY, fecha DATE, monto float, codc CHAR(3)NOT NULL, foreign key(codc) references Cliente(cod) ); INSERT INTO NotaVenta VALUES('500','2009/05/10',600,'100'); INSERT INTO NotaVenta VALUES('501','2009/03/02',750,'101'); CREATE TABLE DetalleVenta ( id int primary key auto_increment, nrov CHAR(3)NOT NULL, codp CHAR (3)NOT NULL, cantidad INTEGER, precio float, FOREIGN KEY (codp)REFERENCES Producto(cod), FOREIGN KEY (nrov) REFERENCES NotaVenta(nro) ); INSERT INTO DetalleVenta VALUES(1,'500','200',2,300); INSERT INTO DetalleVenta VALUES(2,'501','200',1,300); INSERT INTO DetalleVenta VALUES(3,'501','201',1,450);
Para empezar a crear las clases necesarias para Hibernate abrimos Netbeans y creamos un nuevo proyecto:
Elegimos el tipo de proyecto en este caso estamos trabajando con Java as que creamos una aplicacin Java:
Listo ahora tenemos una clase lista sobre la cual implementaremos las clases necesarias para la conexin con Hibernate:
Seleccionamos la librera Hibernate (Esta viene incluida en Netbeans desde su versin 6.8 en adelante) y elegimos como tipo de archivo el Wizard de configuracin para crear la cadena para la conexin:
Le damos un nombre y una ubicacin para el archivo. En este caso dejamos lo que estaba por defecto:
Aqu elegimos el gestor de base de datos en este caso MySQL, direccin del servidor, puerto y base de datos.
Seideseramos agregar ms detalles a la conexin elegimos la opcin Add que est debajo de los detalles:
Ahora hacemos la ingeniera a la inversa creando un Wizard para Ingeniera a la Inversa. Esto es para traer las tablas de la base de datos a la plataforma de desarrollo:
Asignamos un nombre y ubicacin. Una vez ms dejamos las que estaban por defecto:
Una vez conectados con la base de datos debern aparecer todas nuestras tablas y seleccionaremos las que deseamos usar. En este caso le damos click al botn Add All:
Se crea una clase de tipo XML que nos da las tablas en formato XML. No es necesario alterar estos datos si es que no se tiene gran conocimiento sobre HTML o XML
Creamos un tercer archivo dentro de la carpeta creada para Hibernate en este caso tiene el nombre de default package:
Ahora creamos el archivo de tipo Mapping para el realizar el mapeo de las tablas desde el gestor:
Una vez ms elegimos el nombre y la ubicacin pero en este caso tambin le damos un nombre al paquete. Se llamara datos:
Podemos ver los archivos que se crearon para cada tabla. Se crea tanto un archivo XML como uno Java:
Dentro del archivo .xml se puede ver que cada tabla con sus atributos tomaron el formato XML:
En el caso del archivo .java podemos ver que cada atributo de la tabla es un objeto y a modo de reemplazar las directivas SQL como ser SELECT, INSERT, etc. Se puede ver que se crearon mtodos del tipo GET y SET:
Creamos un archivo del tipo HibernateUtil, esta acta como la clsica clase conexin:
Le damos un nombre al archivo y un nombre al paquete. En este caso el paquete tiene el nombre de util:
Esta clase se encarga de crear la sesin necesaria para la conexin con la base de datos:
Con esto estamos listos para aplicar Hibernate. Para ver un ejemplo de cmo se utiliza Hibernate se puede consultar el video adjunto.