0
我想對使用與另一個實體的連接的實體運行條件查詢。但從Java/Hibernate的角度來看,沒有提到這個第二個實體,從第二個實體到第一個實體只有一個。使用hibernate條件查詢加入一個沒有直接引用的實體
爲了使它可以理解的,這裏是cat'ifized情況:
===== Cat.java =====
@Id private long id;
@Column(unique = true, nullable = false)
private String name;
===== Kitten.java =====
@Id private long id;
@Column(unique = true, nullable = false)
private String name;
@OneToOne(optional = false)
private Cat mother; //only one child per mother ...
現在我想查詢貓有限制和排序依據的小貓。
session.createCriteria(Cat.class)
.createAlias(???? , "kitten")
.add(Restrictions.like("kitten.name", "name_of_a_kitten")
.addOrder(Order.asc("kitten.name"))
.list();
首先我想用的子查詢,但我無法找到訂購和subquerys不如在我眼裏別名爲可讀的解決方案。
貓不能改變,所以沒有辦法改變雙向方向性。
我該如何完成查詢?
Btw。我正在使用hibernate 4.2。