Tengo 2 entidades en JPA: entrada y comentario. La entrada contiene dos colecciones de objetos Comment.¿Cómo tener 2 colecciones del mismo tipo en JPA?
@Entity
public class Entry {
...
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@IndexColumn(base = 1, name = "dnr")
private List<Comment> descriptionComments = new ArrayList<Comment>();
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@IndexColumn(base = 1, name = "pmnr")
private List<Comment> postMortemComments = new ArrayList<Comment>();
...
}
Para almacenar dichos objetos, JPA + Hibernate crea "Entrada" mesa "Comentario" mesa y SINGLE "Entry_Comment":
create table Entry_Comment (Entry_id integer not null, postMortemComments_id integer not null, pmnr integer not null, descriptionComments_id integer not null, dnr integer not null, primary key (Entry_id, dnr), unique (descriptionComments_id), unique (postMortemComments_id))
El almacenamiento de objetos fallar como descriptionComments_id
y postMortemComments_id
no puede ser "no nulo" al mismo tiempo.
¿Cómo almaceno un objeto que contiene dos colecciones del mismo tipo usando JPA + Hibernate?
¿Y cómo haces que esta relación sea bidireccional? –