0
我有這樣的實體:如何有來自多個實體的標準休眠
@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;
}
,我想有通過標準Titul.nazov和Autor.meno SELECT
到目前爲止,我在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();
但試圖EXECUT critT.list()
我是什麼當d它總是結束錯了嗎?我如何將JOINed標準添加到Hibernate中的標準?
http://stackoverflow.com/a/8726763/2231632 - 可能重複 – prabugp
這解決了我的問題: http://stackoverflow.com/questions/8726396/hibernate-criteria-join-with-3 -tables/8726763#8726763 – Ricsie