我將從一個清理過的示例開始。使用特定子類查找行的條件查詢
在我的系統中,我有Car類。汽車有許多領域,其中GearShift是gearShift類的gearShift實例。
public class Car {
private GearShift gearShift;
// Snip
}
GearShift是一個抽象類,AutomaticShift和StickShift從該類繼承。這在Hibernate中被映射爲每個子類的表。
現在,比如說我想讓自動變速的汽車。我更喜歡通過Hibernate標準來做到這一點,所以我想象一下我可以添加的「type」限制,如下所示。
getSession().createCriteria(Car.class)
.add(Restrictions.ofType(AutomaticShift.class)
.list();
這有可能以任何方式嗎?
你的映射如何?你使用鑑別器嗎? – Selim
爲什麼使用HQL不是一種選擇? Criteria API不公開完整的Hibernate功能。 –