具有持久子类

时间:2015-11-05 14:16:46

标签: java inheritance jdbc persistence

当我坚持这个子类时会发生什么? 当我在数据库中查询Subclass对象时,变量a和b是否可用?我怎样才能坚持a和b?

public Superclass {

    private int a;
    private Obj b;

    // ... 
}

@Entity
public Subclass extends Superclass{
    @id int x;

    public Subclass(int a, Obj b, int x){
        super(a, b);
    }
}

1 个答案:

答案 0 :(得分:2)

ab将不会被保留。

来自https://docs.oracle.com/javaee/6/tutorial/doc/bnbqn.html

  

非实体超类

     

实体可能有非实体超类,而这些超类可以   无论是抽象的还是具体的。非实体超类的状态   是非持久的,以及从非实体继承的任何状态   实体类的超类是非持久的。非实体   超类不能在EntityManager或Query操作中使用。任何   非实体超类中的映射或关系注释   忽略。