页面分页模块

#macro( PageInfo $pager )
    共$!{pager.recCount}条记录 
    第$!{pager.pageIndex}/$!{pager.pageCount}页  
    <input type="hidden" id="pageNum" value="$!{pager.pageCount}" size="7"/>
    <a href="javascript:_submitPaged(1)" class="redlink">【首页】</a>&nbsp;
    <a href="javascript:prev()" class="redlink">【上一页】</a>&nbsp;
    <a href="javascript:next()" class="redlink">【下一页】</a>
    <a href="javascript:_submitPaged($!{pager.pageCount})" class="redlink">【尾页】</a>&nbsp;
    <input onkeyup="value=value.replace(/[^\d]/g,‘‘)" id="pageId" name="pageId"  value="$!{pager.pageIndex}" size="7"/>
    <a href="javascript:jump()" class="redlink">【跳转】</a>&nbsp;
#end

package com.bw30.hib.dao;

public class Pager {
    private int pageIndex = 1; // 页码
    private int pageSize = 20; // 每页记录条数
    private int recCount = 0; // 记录总条数
    private int pageCount; // 记录总页数
    private int pageStart; // 第一位页码
    private int pageEnd; // 最后一位页码

public int getPageStart() {
        pageStart = getPageIndex();
        return pageStart;
    }
    /**
     * 取得当前页记录的开始索引
     * @return
     */
    public int getRecIndex() {
        if (pageIndex <= 0)
            pageIndex = 1;
        if ((pageIndex - 1) * pageSize > recCount) {
            pageIndex = getPageCount();
            if (recCount % pageSize != 0) {
                return recCount - recCount % pageSize;
            } else {
                return recCount - pageSize;
            }
        }
        if ((pageIndex - 1) * pageSize == recCount) {
            pageIndex = getPageCount();
            return recCount - pageSize;
        }
        return (pageIndex - 1) * pageSize;
    }

public int getPageEnd() {
        pageEnd = getPageCount();
        return pageEnd;
    }

public Pager() {
        pageSize = 10;
        pageIndex = 1;
    }

public Pager(int pid, int psize) {
        pageIndex = pid;
        pageSize = psize;
    }

public Pager(int pid) {
        pageIndex = pid;
    }

public int getPageIndex() {
        if (pageIndex > getPageCount()) {
            pageIndex = 1;
        }
        return pageIndex;
    }

public void setPageIndex(int pageIndex) {
        this.pageIndex = pageIndex;
    }

public int getPageSize() {
        return pageSize;
    }

public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

public int getRecCount() {
        return recCount;
    }

public void setRecCount(int recCount) {
        this.recCount = recCount;
    }

public int getPageCount() {
        if (recCount == 0) {
            pageCount = 1;
            return pageCount;
        }
        pageCount = 0;
        if (recCount % pageSize == 0)
            pageCount = recCount / pageSize;
        else
            pageCount = recCount / pageSize + 1;
        return pageCount;
    }

}

时间: 2024-10-05 20:10:29

页面分页模块的相关文章

数据分页模块系列 (二) 完美封装PageModel实现分页模块

先说一下框架分页技术,在我们之前那个高校项目中使用DWZ实现的分页用了自定义标签使用起来也比较方便,除了DWZ很多框架已经给我们做好了分页我们需要做的仅仅是把一些分页参数传给我们的框架,俗话说你用别人的东西就得按着别人的来,得按着别人的框架进行布局了.传参了等等,这样灵活性大大降低,况且感觉使用框架频繁的一些软件一般是一些管理类型的,对界面的美观方便需求并不是很高,工整.能用就可以,然而呢,还有些界面需要灵活配置分页按钮.分页条等,这就需要把类似于这样的功能封装起来. 分页的模块很多人都在写都在

django 自定义分页模块

django 自定义分页模块 from django.shortcuts import render, HttpResponse, redirect from django.utils.safestring import mark_safe class Page(object): def __init__(self, current_page): self.current_page = int(current_page) @property def start(self): return (se

js/jquery 页面分页(看别人写的看不懂,自己写了一个---仅基础知识) 另自己倒一个jquery的.jar包即可使用

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

分页技术框架(Pager-taglib)学习一(页面分页)

一.Pager-taglib简介     1.Pager-taglib,支持多种风格的分页显示.实际上她是一个Jsp标签库,为在JSP上显示分页信息而设计的一套标签,通过这些标签的不同的组合,会形成多种不一样的分页页面,风格各异,她自带的DEMO就有八种左右的分页风格(在pager-taglib-2.0.war包下的WEB-INF\jsp 中),包括Google的分页风格.而需要订制自已的风格的分页页面也非常简单.    2.分页方式有两种:     一种是:页面分页,即从Action或者其他控

js 将很长的内容进行页面分页显示

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>页面分页</title> &l

Django内置的分页模块

自定义分页 未封装版: 优点:直观 缺点:代码乱,不易维护,可拓展性差 data = [] for i in range(1, 302): tmp = {"id": i, "name": "alex-{}".format(i)} data.append(tmp) print(data) def user_list(request): # user_list = data[0:10] # user_list = data[10:20] try: c

爬虫2:html页面+beautifulsoap模块+post方式+demo

爬取html页面,有时需要设置参数post方式请求,生成json,保存文件中. 1)引入模块 import requests from bs4 import BeautifulSoup url_ = 'http://www.c.....................' 2)设置参数 datas = { 'yyyy':'2014', 'mm':'-12-31', 'cwzb':"incomestatements", 'button2':"%CC%E1%BD%BB",

EasyUI 页面分页

DAO package com.hanqi.dao; import java.util.ArrayList; import java.util.List; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; impo

爬虫3:html页面+webdriver模块+demo

保密性好的网站,不能使用request请求页面信息,这样可以使用webdriver模块先开启一个浏览器,然后爬去信息,甚至还可以click等操作对页面操作,再爬取. demo 一般流程: 1)包含selenium 模块 from selenium import webdriver from selenium.webdriver.common.keys import Keys 2)设置采用火狐浏览器(chrome也可以) driver = webdriver.Firefox() 3)get方式打开