2011-08-10 37 views
1

屬性我有類似如下的查詢從@MappedSuperclass

@MappedSuperclass public abstract class Foo { 
    @Column private String myId; 
} 

@Entity public class Bar extends Foo { 
} 

@Entity public class Baz extends Foo { 
} 

但我現在想查詢的BarBaz使用myId所有實例,但我的查詢被拒絕:

組織.hibernate.hql.ast.QuerySyntaxException:Foo未映射[來自 Foo foo where foo.myId =:myId]

回答

1

如果您單獨查詢每個實體,您可以在2個實體上成功查詢嗎?

喜歡的東西:

Collection<Bar> bars = (Bar) entityManager.createQuery("From Bar bar 
    where bar.myId=:myId").setParameter("myId", myId).getResultList(); 

答案是因爲只有具體類的表,如果你看這裏 clearer answer to identical question