我有以下情况:
class Animal (holds all attributes, of course public getter+setter)
class Dog extends Animal (holds only specific methods)
class Cat extends Animal (holds only specific methods)
我想将所有动物存放在动物表中。但是当我加载它们时,我想以某种方式说明它们被加载到哪个子类中。在这种情况下,动物在理论上是抽象的。
是这样的:
session.createCriteria( Animal.class ).addRestriction( .. ).mapTo( Cat.class ) ...
问题是否则我没有看到任何可能从加载的Animal转换为Cat。 :(
我正在使用hibernate 4.2
答案 0 :(得分:0)
你不是只选择你想要的实体?
Cat是Animal的一部分
SELECT cat FROM Cat cat ...
将仅返回Cat实体,即使您是一个表策略。