第一种是前台分页,也叫假分页,把查询得到的所有结果全部传到前台,利用js插件啥的分页,网上很多类似的插件,数据不多时用这个就可以了;
第二种是后台分页,只查询你页面显示的值,要实现这个功能,除了必要的参数,查询起始列数,要查询的条数也要传过去,调用hibernate分页,若有删除功能,还要把满足条件的数据的总条数传过去(最后一页只有一条数据时会用到,这样你就能实现网页显示前一页的内容,当然也可以每次跳页都查一遍),这里我也推荐一个插件,pager-taglib
用SSH写分页,很快的。不画页面代码5分钟搞定,加页面总共10分钟。页面不需要一句小脚本。我只讲思路。新建一个PageBean类,封装7个属性。即总页数,每页数据显示条数的大小,上一页,下一页,当前页,总数据条数,和一个List集合。给每页大小赋你自己想控制的值。给当前页赋初始值1。同时要控制溢出,在获得总页数的方法中,返回总数据条数%每页设置的数据大小,当等于0时,就是总数据条数/每页设置的数据大小,如果不等于0就是总数据条数/每页设置的数据大小的商+1。在设置上一页中当传入的上一页小于等于1时让它等于1,设置下一页中当传入的值大于等于总页数时,让它等于总页数。 然后去数据访问层,方法是void fenye(PageBean pb)方法体的中第一条是设置总记录数,这时候要调用SSH集成后自动生成的查询整个数据实体类的方法返回集合的size()方法。然后再使用匿名内部类,query语句查询数据实体类。注意使用匿名实体类时方法中PageBean的参数pb要设为常量。还要设置每页数据的最大值和最小值。最大值就是PageBean中的pb.getPagesize().最小值就是pb.get当前页-1的值再去乘以pb.getPagesize().。然后查询语句返回集合。进Action,再Action中声明一个List 集合的引用。还要设置上一页等于当前页-1.下一页则+1,页面中迭代pb.list,上一页A标签传上一页的中的当前页,下一页也是如此。这就是当前最标准的SSH分页方法, 别看字多,其实 *** 作起来熟练就10分钟。好好理解吧。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)