18 -Usando las Anotaciones @OneToMany y @ManyToOne

Como usar las Anotaciones @OneToMany y @ManyToOne para identificar las relaciones entre los objetos en Java con MySQL usando JPA Eclipselink.

Anterior

Una de las grandes ventajas que tiene trabajar con JPA, es que te permite hacer relaciones con otras entidades, de esta forma, es posible agregar otras Entidades como atributos de clase y JPA se encargará de realizar el SELECT adicional para cargar esas Entidades.

@OneToMany y @ManyToOne

Una relación OneToMany en Java es donde el objeto de origen tiene un atributo que almacena una colección de objetos de destino y si esos objetos de destino tuvieran la relación inversa con el objeto de origen, sería una relación ManyToOneTodas las relaciones en Java y JPA son unidireccionales, ya que si un objeto de origen hace referencia a un objeto de destino, no hay garantía de que el objeto de destino también tenga una relación con el objeto de origen. Esto es diferente a una base de datos relacional, en la cual las relaciones se definen a través de claves externas y consultas de tal manera que la consulta inversa siempre existe. 

JPA también define una relación ManyToMany, que es similar a OneToMany, excepto que la relación inversa (si se definió) es una ManyToMany. La principal diferencia entre OneToMany y ManyToMany en JPA es que una relación ManyToMany siempre hace uso de una tabla de unión relacional intermedia para almacenar la relación, mientras que una OneToMany puede usar una tabla de unión o una clave externa en la tabla del objeto de destino que hace referencia a la tabla principal del objeto de origen. llave. Si OneToMany utiliza una clave foránea en la tabla JPA del objeto de destino, se requiere que la relación sea bidireccional (la relación ManyToOne inversa se debe definir en el objeto de destino), y el objeto de origen debe usar el mappedBy atributo para definir la asignación.

¿Te ha gustado?, comparte en redes sociales
¿Te ha gustado?, comparte en redes sociales

WALTER ROSERO

Creador de Walter Rosero - SuperTecnoDroid | Responsable del Canal de YouTube Walter Rosero. Amante de la tecnología y juegos, me gusta aportar con un granito de arena al aprendizaje y la enseñanza. Soy editor y compositor en el área multimedia. Combino mi pasión por la enseñanza a través  de la World Wide Web.

WALTER ROSERO

WALTER ROSERO

Hola soy Robinson Rosero, me dedico a crear contenido por medio de la World Wide Web, para ayudar a las personas y así poder desarrollar experiencia con nuevas ideas.

Siguenos En