Tabla de Contenidos
Inicio
Esta unidad llamada “Relaciones” explica como realizar las distintas relaciones entre entidades de Hibernate.
El motivo de solo estudiar estos temas es por un lado que esta unidad quedó el año pasado muy pesada al ver todos los tipos de relaciones. Pero el motivo principal es un problema con Hibernate en la relaciones muchos a muchos que hacen que al borrar una fila se borren mas filas de las necesarias.
Así que por un lado no es recomendable usar la relación Muchos a muchos. También para qué explicar la relación Uno a muchos (desordenada) si realmente en mas conveniente usar Uno a muchos (ordenada) ya que no se pierde nada. Por otro lado las relaciones “uno a no” tampoco son tan habituales.
Por todo ello mejor aligerar esta unidad y tener más tiempo para las 2 últimas unidades que son más interesantes y mas complejas.
Aun así se ha dejado el material extra por si al alguien le interesa profundizar en el tema.
Temas
Ejemplos
Todos los ejemplos de esta unidad se encuentran en github en https://github.com/logongas/cursohibernate/tree/master/ejemplos/unidad_03.
En caso de no disponer de git en el ordenador cliente se puede descargar en un fichero zip todos los ejemplos del curso desde master.zip
- Ejemplo 01
Relación 1 a 1 desdeProfesor
hacíaDireccion
(unidireccional) usando ficheros “.hbm.xml
”.
- Ejemplo 02
Relación 1 a 1 desdeProfesor
hacíaDireccion
(unidireccional) usando anotaciones de JPA.
- Ejemplo 03
Relación 1 a 1 entreProfesor
yDireccion
(bidireccional) usando ficheros “.hbm.xml
”.
- Ejemplo 04
Relación 1 a 1 entreProfesor
yDireccion
(bidireccional) usando anotaciones de JPA.
- Ejemplo 05
Relación uno a muchos entreProfesor
yCorreoElectronico
, pero sin ordenar, usando ficheros “.hbm.xml
”.
- Ejemplo 06
Relación uno a muchos entreProfesor
yCorreoElectronico
, pero sin ordenar, usando anotaciones de JPA.
- Ejemplo 07
Relación uno a muchos entreProfesor
yCorreoElectronico
, ordenada , usando ficheros “.hbm.xml
”.
- Ejemplo 08
Relación uno a muchos entreProfesor
yCorreoElectronico
, ordenada , usando anotaciones de JPA.
- Ejemplo 09
Relación muchos a muchos entreProfesor
yModulo
, usando ficheros “.hbm.xml
”.
- Ejemplo 10
Relación muchos a muchos entreProfesor
yModulo
, usando anotaciones de JPA.
- Ejemplo 11
Ejemplo de uso de los métodosequals
yhashCode
. Realizamos la comparación y añadir a un Set el mismo objetos obtenido en distintas sesiones. Con la claseProfesor
los resultados son erróneos pero con la claseUsuario
son correctos, ya que hemos sobreescrito los métodosequals
yhashCode
.
Ejercicios
Los ejercicios de esta unidad se encuentran en Relaciones