Java 查询继承实体时发生异常

Java 查询继承实体时发生异常,java,hibernate,inheritance,jpa,persistence,Java,Hibernate,Inheritance,Jpa,Persistence,在我的数据库中,我有类似的内容: +---------+ | answer | +---------+ ----------------------->--+--------------+ | id +------) | answer_type_b| ---->-+--------------+ +--------------+ ...

在我的数据库中,我有类似的内容:

+---------+
| answer  |
+---------+       ----------------------->--+--------------+
| id      +------)                          | answer_type_b|
                  ---->-+--------------+    +--------------+ 
  ...                   | answer_type_a|    | id           |
                        +--------------+    | field_b      |
                        | id           |    | ...          |
                        | field_a      |
                        | ...          |
在我的答案表中,我有公共信息,然后我有两个与父表相关的继承表,它们具有不同的特定字段

我使用JPA 2+Hibernate 4.2.6在应用程序中创建了模型:

@Entity
public abstract class Answer {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    // ...
}

@Entity
public class AnswerA extends Answer{

    @Column(name = "field_a")
    private String fieldA;

    // ...
}

@Entity
public class AnswerB extends Answer{

    @Column(name = "field_b")
    private String fieldB;

    // ...
}
现在,当我尝试查询所有答案实体时,我希望得到一个包含所有答案(类型a和类型B)的集合,相反,我得到一个异常:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'answer0_.field_a' in 'field list'

我想这是因为父表中没有字段,所以我该如何解决这个问题呢?有没有办法查询所有继承表?

我解决了以下有趣的wiki书籍。

您还应该发布类的变量和SQL查询以及周围的代码。因为我只是转发给您,所以我将此作为注释发布:您应该看一看。我认为遗产。。。注释应该可以解决您的问题。或者只需查找hibernate文档,它们比url I更多provided@Ben非常感谢你。我发现这个文档也很有用,欢迎您!干杯: