消毒された例から始めましょう。
私のシステムには、クラスCarがあります。Carにはいくつかのフィールドがあり、その中にはクラスGearShiftのgearShiftインスタンスがあります。
public class Car {
private GearShift gearShift;
// Snip
}
GearShiftは抽象クラスであり、AutomaticShiftとStickShiftが継承します。これは、Hibernateではサブクラスごとのテーブルとしてマップされます。
さて、オートマチックギアシフト付きの車を手に入れたいとしましょう。Hibernate基準を使用してこれを実行したいので、以下に示すように、追加できる「ofType」制限を想像しています。
getSession().createCriteria(Car.class)
.add(Restrictions.ofType(AutomaticShift.class)
.list();
これはどうにか可能ですか?