JPA:通过自己的字段查询实体的两个后代

时间:2013-06-13 16:54:34

标签: java inheritance jpa

我有一个抽象的实体,有两个具体的后代。继承类型是Single Table。我需要从db中找到一些后代。作为搜索条件,我使用与子项相关的字段,即父类没有该属性。因此,我需要一个父实体的实例列表。

这是一个伪代码:

abstract class ParentEntity {
} 

class ChildA extends ParentEntity {    
int a;    
}

class ChildB extends ParentEntity {    
String b;    
}

查询应该是这样的:

select ParentEntity from ChildA childA where childA.a=5 UNION select ParentEntity from ChildB childB where childB.b="hello" 

现在我的问题:我可以在一个查询中获取我需要的实体,或者在列表中获得一些子查询,或者使用UNION(据我所知,它在JPA中不被广泛支持)? 要么 无论如何,我有两个运行两个单独的查询,联合他们的结果并手动排序?

JPA,Hibernate,PostgreSQL。

0 个答案:

没有答案