I have entities like this:
@Entity
@Table(name = "titul")
public class Titul {
@OneToMany(mappedBy = "titul")
private Set<Autorstvo> autorstvo;
@Column (name = "nazov")
private String nazov;
}
@Entity
@Table(name = "autorstvo")
public class Autorstvo {
@ManyToOne
@JoinColumn(name="id_autor")
private Autor autor;
}
@Entity
@Table(name = "autor")
public class Autor {
@Column (name = "meno")
private String meno;
@OneToMany(mappedBy = "autor")
private Set<Autorstvo> autorstvo;
}
And i want to have SELECT by criteria Titul.nazov and Autor.meno
So far i did this in Hibernate:
Criteria critT = session.createCriteria(Titul.class);
critT.add(Restrictions.like("nazov", titul));
critT.createAlias("titul.autorstvo", "autorstvo");
critT.createAlias("autorstvo.autor", "autor");
critT.add(Restrictions.ilike("autor.meno", autor));
critT.list();
But It always ends when trying to execut critT.list()
What am I doing wrong? How can i add JOINed criterias to criteria in Hibernate?