我有一个查询,它给出了一个很大的结果,假设它是1,000,000。我需要在我正在使用的UI.So中的网格中显示所有这些记录
TypedQuery<Object> typedQuery = entityManager.createQuery(cq);
typedQuery.setFirstResult(0);
typedQuery.setMaxResults(1000);
List<Object> resultList = typedQuery.getResultList();
当这个查询被执行时,我只能在UI.It中看到1000条记录,而不是获取下一组results.But,我需要看到所有的记录,不管这个查询是什么returning.How,我可以做this.Can吗?任何人告诉me.It对我来说都是非常紧急的。
发布于 2012-12-22 17:06:16
如果你想要所有的东西,而不仅仅是前1000个结果,为什么还要调用setFirstResult()
和setMaxResults()
呢?删除它们,查询将检索所有内容:
TypedQuery<Object> typedQuery = entityManager.createQuery(cq);
List<Object> resultList = typedQuery.getResultList();
发布于 2012-12-24 15:12:39
您如何尝试获取下一组结果?
如果你按原样使用帖子中显示的查询,你将总是得到前1000条记录,因为这就是你所要求的。
您需要重复调用此查询,方法是将setFirstResult
设置为0,然后设置为1000,然后设置为2000,依此类推,直到结果列表为空。
https://stackoverflow.com/questions/14001067
复制相似问题