我使用此代码对MySQL的分页查询语句(使用Struts 2 + Hibernate的工作):关于在MySQL
Query query=getSession().createQuery("from GovOffice");
query.setFirstResult(0);
query.setMaxResult(100);
List<GovOffice> list=query.list();
这是从第一个记录开始GovOffice的这将返回列表,显示100条记录每页。
假设我有100,000条记录,这个查询“从GovOffice”得到所有100,000条记录吗? 通过setFirstResult和setMaxReSult它将限制从100,000到100条记录。如果这是真的,这意味着分页必须是无用的。
如果没有任何方法来证明查询不会从DB获取数据,直到我们拨打query.list()
。
你可以打印出休眠创建并看看,看看它做什么的HQL。但我相信它限制在数据库方面,只返回你的100个结果。 – 2012-07-13 14:28:09
谢谢戴夫牛顿先生! – LeePhan 2012-07-13 17:05:59