jpql分页查询怎么直接查最后一页

分页的时候有首页和末页,点击末页的时候不知道query.setFirstResult(index)的index
应该写什么。而且想直接通过jpql语句找到表中一共有多少条记录,在网上也没有找到
应该怎么写,求教==

http://blog.csdn.net/wguoyong/article/details/7401771

然后看了上面的两个例子还是不会

例:
//查询所有Order 的订单号及其订单项的数量
select o.orderid, size(o.orderItems) from Order as o group by o.orderid
//查询所有Order 的订单号及其总金额/10 的余数
select o.orderid, mod(o.amount, 10) from Order as o
例:
public List getPersonList(int max,int whichpage) {
try {
int index = (whichpage-1) * max;
Query query = em.createQuery("from Person p order by personid asc");
List list = query.setMaxResults(max).
setFirstResult(index).
getResultList();
em.clear();//分离内存中受EntityManager管理的实体bean,让VM进行垃圾回收
return list;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}

后来用手机查了查,终于会了,然后这样写的

public String getSize(){
Query query = em.createQuery("select count(a.id) from User a");
query.getSingleResult();
return query.getSingleResult().toString();
}