【发布时间】:2014-11-17 11:15:24
【问题描述】:
我在一个表中有 100 万条记录,想使用 EJB3.1(JPA QUERY) 一次获取 1000 条记录,但没有得到任何好的方法,LIMIT 是 JPA 的意外标记。所以请建议我一种在方法调用中获取有限记录的方法。我使用了setFirstRsult(count) 和setMaxResult(count+1000),但是在下一个方法调用 firstResult Set 每次从 0 开始而不是从 1001 开始,更新 setFirstResult 计数我正在维护计数器。但仍然没有得到任何解决方案。
String query = "select a from CourseMasterBo a";
List<CourseMasterBo> list = new ArrayList<CourseMasterBo>();
list = manager.createQuery(query).setFirstResult(4).setMaxResults(8).getResultList();
logger.info("list size--------"+list.size());
I should get 4 as size of list but i am getting 8 ,starting from intial to 8th records in db.
below is my query and answer---->
17:39:47,435 INFO [com.infinite.gndu.academicDtos.AcademicYear] list size--------8
【问题讨论】:
-
是的,先生,我每次都维护计数器而不是 setFirstResult 从 0 开始,你有没有实现过,我没有得到正确的结果,如果你知道怎么做,请与我分享代码跨度>
-
显示一些代码,到目前为止你做了什么?
-
Hey Ean 我已经在下面发布了我的代码,请查看并纠正我
-
您的代码应该张贴在问题中,而不是作为答案。编辑帖子