JPA / EclipseLink在不同集合上混合批量获取策略

时间:2013-02-06 14:28:19

标签: jpa eclipselink

我在EclipseLink 2.3.2中有一个JPA / JPQL查询,我在多个集合上提供批量获取查询提示

hints={
  @QueryHint(name=QueryHints.BATCH, value="obj.collection1"),
  @QueryHint(name=QueryHints.BATCH, value="obj.group.members"),
  @QueryHint(name=QueryHints.BATCH_TYPE, value="IN"),
}

有没有办法在不同的集合上指定不同的批量提取类型,这样我可以obj.collection1 JOINobj.group.members INEXISTS }?

或者他们都必须一样吗?

实际应用是,通过对嵌套集合进行获取,可能在不同级别上存在不同的基数。例如,对于初始查询,可能会返回数千行,因此我无法在obj.collection1中使用“IN”,而不会破坏IN子句中的Oracle语法限制。另一方面,对于obj.group.members,可能只有一些不同的group值,因此IN子句会更有意义。

0 个答案:

没有答案