说我有这些课程
@Entity
class Animal { @Id Long id; }
@Subclass
class Dog extends Animal {}
@Subclass
class Cat extends Animal {}
我可以确定狗的ids和猫的ids之间没有重叠。换句话说,给定一个狗的id,这样做是否安全:
ofy().load().type(Animal.class).id(idOfADog)
答案 0 :(得分:0)
TL; DR:是的。
所有@Subclass
es都与声明的@Entity
存储的“种类”相同。也就是说,就GAE而言,你所有的狗和猫都是动物。在子类上有一个额外的鉴别器属性告诉Objectify实例化正确的子类,但这不会影响对象标识(它不是键的一部分)。