0

我正在使用 Play 2 框架和 ebean ORM 用 Ja​​va 构建应用程序。

我有一个实体类Person,它与几个具有超类型的实体类相关Certificate,它是一个abstract @MappedSuperclass. 目前,我正在为每个子类创建一个关系,如下所示:

public class `Person` extends Model {
    // elided...
    @OneToMany
    public List<SubType1> subType1s;

    @OneToMany
    List<SubType2> subType2s;
    // elided...
}

子类如下所示:

public class SubTypeGeneric {
    // elided...
    @ManyToOne
    public Person person;
    // elided...
}

我想知道的是:是否可以将子类实体列表Person组合成一个超类列表,如下所示:

public class `Person` extends Model {
    // elided...
    @OneToMany
    public List<SuperType> superTypes;
    // elided...
}
4

1 回答 1

1

不,这是不可能的。关联是在实体之间,而不是在 MappedSuperclasses 之间。如果你有一个 OneToMany 可以是只有一个 ManyToOne 的反向关联。

如果需要,则证书应使用@Entity 进行注释,并且应包含与 Person 而不是所有子类的 ManyToOne 关联。

于 2013-08-20T12:44:30.257 回答