如何使用条件api查询两个具有相同结构的SQL表?

我有一个存档数据库,其中有两个具有相同结构的表,即活动的EvntSumaryT和存档的ArchiveEvntSumaryT。 我想更改当前的标准api代码,它只查询EvntSumary,以便根据用户选择的日期从两个表中提取数据并将结果返回到列表中。 我的问题是,它们在hibernate-criteria中没有联合功能,所以我如何能够一次查询两个表并将结果合并到一个列表中?

以下是我的jpa实体类的代码。 我已经将活动表的实体设置为父类,并将子项设置为ArchiveEvntSumaryT,因为它们共享相同的字段。

@Entity
@Table(name="EVNT_SUMARY_T")
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class EvntSumaryT {
    //fields 
    //getters and setters
}

@Entity
@Table(name="ARCHIVE_EVNT_SUMARY_T")
public class ArchiveEvntSumaryT extends EvntSumaryT {


}

在归档数据库之前,这是我在DAO类中的标准api查询。

public List<EvntSumaryT> getAllTransaction(SearchCriteria sb) {
    //criteria
    return ls;

}

我如何能够查询两个表并将结果返回到没有联合功能的列表中?


我想到了。 我没有使用inhertance替换union函数,而是在数据库中创建了一个视图,该视图是两个表的联合并将实体映射到视图。

链接地址: http://www.djcxy.com/p/37083.html

上一篇: How to query two SQL tables with the same structure using criteria api?

下一篇: Resolving Criteria on Polymorphic child class attribute jpa hibernate query