首页>代码>基于SSM+MYSQL的一个小型商城网站后台管理系统>/SaleSystem/src/com/gm/common/PageSupport.java
001package com.gm.common;
002 
003import java.util.ArrayList;
004import java.util.List;
005/**
006 * 分页功能类
007 * @author Administrator
008 *
009 */
010public class PageSupport {
011    private Integer totalCount = 0;//总记录数
012    private Integer pageCount=0;//总页数
013    private Integer pageSize = 2;//每页显示记录数
014    private Integer page = 1;//当前页
015    private Integer num = 3;//当前页之前和之后显示的页数个数
016    private List items = new ArrayList();//当前页记录内容集合
017     
018    /**
019     * 计算总页数
020     * @param totalCount
021     */
022    public void setTotalCount(Integer totalCount) {
023        if (totalCount > 0) {
024            this.totalCount = totalCount;
025            if(this.totalCount % this.pageSize == 0){
026                this.pageCount  = totalCount/pageSize;
027            }else if(this.totalCount % this.pageSize > 0){
028                this.pageCount  = totalCount/pageSize + 1;
029            }else{
030                this.pageCount = 0;
031            }
032             
033        }
034         
035    }
036    /**
037     * 获取总记录数
038     * @return
039     */
040    public Integer getTotalCount() {
041        return totalCount;
042    }
043 
044     
045    /**
046     * 获取每页显示记录数
047     * @return
048     */
049    public Integer getPageSize() {
050        return pageSize;
051    }
052 
053    /**
054     * 设置每页显示记录数
055     * @param pageSize
056     */
057    public void setPageSize(Integer pageSize) {
058        this.pageSize = pageSize;
059    }
060 
061    /**
062     * 得到当前页数
063     * @return
064     */
065    public Integer getPage() {
066        return page;
067    }
068 
069    /**
070     * 设置当前页数
071     * @param page
072     */
073    public void setPage(Integer page) {
074        this.page = page;
075    }
076     
077    /**
078     * 获取当前页之前或之后显示的页数个数
079     * @return
080     */
081    public Integer getNum() {
082        return num;
083    }
084 
085    /**
086     * 设置当前页之前或之后显示的页数个数
087     * @param num
088     */
089    public void setNum(Integer num) {
090        this.num = num;
091    }
092 
093    /**
094     * 获取当前页记录内容集合
095     * @return
096     */
097    public List getItems() {
098        return items;
099    }
100 
101    /**
102     * 设置当前页记录内容集合
103     * @param items
104     */
105    public void setItems(List items) {
106        this.items = items;
107    }
108 
109 
110    /**
111     * 得到总页数
112     * @return
113     */
114    public Integer getPageCount() {
115        return pageCount;
116    }
117    /**
118     * 获取前一页
119     * @return
120     */
121    public Integer getPrev(){
122        return page-1;
123    }
124     
125    /**
126     * 获取后一页
127     * @return
128     */
129    public Integer getNext(){
130        return page+1;
131    }
132     
133    /**
134     * 获取最后一页
135     * @return
136     */
137    public Integer getLast(){
138        return pageCount;
139    }
140     
141    /**
142     * 判断是否有前一页
143     * @return
144     */
145    public boolean getIsPrev(){
146        if(page>1){
147            return true;
148        }
149        return false;
150    }
151     
152    /**
153     * 判断是否有后一页
154     * @return
155     */
156    public boolean getIsNext(){
157         
158        if(pageCount!=null && page<pageCount){
159            return true;
160        }
161        return false;
162    }
163     
164    /**
165     * 当前页的前num条页 假设当前页是 6 共有11页 如:1 2 3 4 5
166     * @return
167     */
168    public List<Integer> getPrevPages() {
169        List<Integer> list = new ArrayList<Integer>();
170        Integer _frontStart = 1;
171         
172        if (page > num) {
173            _frontStart = page - num;
174        }
175         
176         
177        for (Integer i=_frontStart; i<page; i++) {
178            list.add(i);
179        }
180         
181        return list;
182    }
183     
184    /**
185     * 当前页的后num条页 假设当前页是 6 共有11页 如:7 8 9 10 11
186     * @return
187     */
188    public List<Integer> getNextPages() {
189        List<Integer> list = new ArrayList<Integer>();
190        Integer _endCount = num;
191            if(pageCount!=null){
192            if (num < pageCount && (page+num)<pageCount) {
193                _endCount = page+_endCount;
194            }else{
195                _endCount=pageCount;
196            }
197             
198            for (Integer i=page+1;i<=_endCount; i++) {
199                list.add(i);
200            }
201        }
202        return list;
203    }
204 
205 
206     
207}
最近下载更多
511076827  LV33 2023年9月20日
泓鼎168  LV20 2023年4月14日
微信网友_6200823191523328  LV3 2022年11月11日
oulingqiao  LV13 2022年6月8日
skook7  LV2 2022年3月31日
lzlzyw  LV14 2022年3月24日
wanglinddad  LV55 2022年2月25日
不会写代码的小姚  LV3 2021年11月20日
543666826  LV34 2021年11月19日
ᯤ⁵²¹ᴳ⁺  LV8 2021年11月13日
最近浏览更多
txf123  LV6 2024年12月10日
火心人  LV2 2024年11月1日
微笑刺客  LV21 2024年8月7日
lyt010628  LV4 2024年7月9日
曾显示  LV6 2024年7月7日
artemiszer0  LV2 2024年7月4日
樱花味小然子  LV5 2024年7月2日
zhezhizzzz  LV2 2024年6月29日
xy007007  LV1 2024年5月4日
fdeded  LV1 2024年4月20日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友