JSP中如何将查询数据库返回的数据分页显示在页面中

2024年11月08日 19:49
有1个网友回答
网友(1):

在获取完所有的list后只需要截取你所需要的一部分list就可以了,所以要知道你所需要的是从哪里开始,到哪里结束。 有很多种方法,如果只是JSP里的话可以再次遍历获取的所有list集合,然后把满足条件的截取出来,开始的list下标应该是:(你要查询的页数-1)*页面要显示的数据条数,也就是你这里的(page-1)*pageRows,结束的地方也就是page*pageRows-1了。//这样应该可以写出来了吧 建议把这个方法封装到一个类里面,一个方法就实现一种功能。当然这是比较麻烦的,现在流行框架,以后会学到的,在hibernate框架里用query语句很容易就实现了,现在时间多, 多看看hibernate框架吧,推荐你一本书,hibernate in action,有中文版的。这个是你们以后入门了hibernate后看的。 public List listOrderByItem(int pageRows,int page) { //page是要显示的页数,pageRows是你要显示的行数 Session session = this.getSession();//获取hibernate的session,hibernate自动生成的DAO里包含 String hql = "from TBL_storage as tbl_s order by item";//hql语句 Query query = session.createQuery(hql);//hibernate的query,通过session创建 query.setFirstResult((page-1)*pageRows);//设置开始的下标 query.setMaxResults(pageRows);//设置每页显示的行数 return query.list();//得到所需要的结果集