码迷,mamicode.com
首页 > 编程语言 > 详细

Java分页类 Page

时间:2015-09-12 21:41:45      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.Iterator;
import java.util.List;

import net.sf.json.JSONObject;

/**
 * 分页类
 * @author rubekid
 *
 * @param <T>
 */
public class Page<T> extends QueryParameter {
    
    public static final int PAGE_SIZE = 20;
    private List<T> result = null;
    private long totalCount = -1;
    private JSONObject queryParams = new JSONObject();

    public Page() {
        setPageSize(PAGE_SIZE);
    }

    public Page(int pageSize) {
        setPageSize(pageSize);
    }

    public Page(int pageSize, boolean autoCount) {
        setPageSize(pageSize);
        this.autoCount = autoCount;
    }

    /**
     * 获取反向排序
     * @return
     */
    public String getInverseOrder() {
        if (order.endsWith("desc")){
            return "asc";
        }
        return "desc";
    }

    public List<T> getResult() {
        return result;
    }

    public void setResult(List<T> result) {
        this.result = result;
    }

    public long getTotalCount() {
        return this.totalCount;
    }

    public void setTotalCount(long totalCount) {
        this.totalCount = totalCount;
    }

    public long getTotalPages() {
        if (totalCount < 0){
            return -1;
        }
        
        long count = totalCount / pageSize;
        if (totalCount % pageSize > 0){
            count ++;
        }
        return count;
    }

    public boolean isHasNext() {
        return (pageNo + 1 <= getTotalPages());
    }

    public int getNextPage() {
        if (isHasNext()){
            return pageNo + 1;
        }
        return this.pageNo;
    }

    public boolean isHasPre() {
        return (pageNo - 1 >= 1);
    }

    public int getPrePage() {
        if (isHasPre()){
            return pageNo - 1;
        }
        return pageNo;
    }

    public void addQueryParam(String key, Object value) {
        queryParams.put(key, value);
    }

    @SuppressWarnings("unchecked")
    public String getQueryString() throws UnsupportedEncodingException{
        String result = "";
        for (Iterator<String> iterator = queryParams.keys(); iterator.hasNext();) {
            String key = iterator.next();
            result += key + "=" + URLEncoder.encode(queryParams.getString(key), "utf-8") + "&";
        }
        
        if (result.length() > 0){
            result = result.substring(0, result.length() - 1);
        }
        return result;
    }

    public String getQueryParamString() {
        return queryParams.toString();
    }

    public void setQueryString(String queryString) {
        queryParams = JSONObject.fromObject(queryString);
    }

    public JSONObject getQueryParams() {
        return queryParams;
    }
}

 

Java分页类 Page

标签:

原文地址:http://www.cnblogs.com/rubekid/p/4803633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!