休眠:解决无法映射到接口的问题

时间:2019-06-01 13:25:40

标签: hibernate oop

我刚进入休眠状态,而我发现的一件事是,有时它会限制我使用层次结构,而不是我想要的。

我知道不可能做类似的事情

public interface Storable {
    public String getStorageLocation();
}

然后拥有

@Entity
public class Widget {

    @Id
    private int id;
    @OneToOne
    private Storable storable;        
}

虽然这在休眠状态下不起作用,但我确实认为在许多情况下这是最佳的OOD选择。在这种情况下,解决诸如

@Entity
public class Widget {

    @Id
    private int id;
    private int storableId;
    // this might also just be a string called type, which could
    // be mapped to an obj at some point
    private Class storableClass;

}

我有点讨厌,但是就坚持当前的对象模型而言,这会让我放松。我认为这肯定是一个相对常见的情况,想知道其他人如何处理它。

0 个答案:

没有答案