Page封装类

/*
 * COPYRIGHT Beijing cp-boss-Tech Co.,Ltd.                                   *
 ****************************************************************************
 * 源文件名:  org.cpframework.dao.page.Page.java
 * 功能: cpframework框架
 * 版本:	@version 1.0
 * 编制日期: 2014-1-10 下午3:03:40
 * 修改历史: (主要历史变动原因及说明)
 * YYYY-MM-DD |    Author         |	 Change Description
 * 2014-1-10    |    gaowenming     |     Created
 */
package com.common;

import java.io.Serializable;

/**使用说明>
 * </p>
 */
public class CP_Page<T> implements Serializable {

	/**
	 * @Fields serialVersionUID
	 */
	private static final long serialVersionUID = 1L;

	/**
	 * 当前页码,从0开始
	 */
	private int index = 0;

	/**
	 * 每页记录数
	 */
	private int pageSize = 10;

	/**
	 * 总记录数
	 */
	private long total;

	/**
	 * 构造方法
	 *
	 * @param index
	 *            当前页码,从0开始
	 * @param pageSize
	 *            每页记录数
	 * @param total
	 *            总记录数
	 */
	public CP_Page(int index, int pageSize, long total) {
		this.index = index;
		this.pageSize = pageSize;
		this.total = total;
	}

	public CP_Page() {
	}

	/**
	 * 获取总页数
	 *
	 * @return 总页数
	 */
	public int getPageCount() {
		return (int) Math.ceil((double) total / (double) pageSize);
	}

	/**
	 * 是否有下一页
	 *
	 * @return true,如果有下一页,否则为false
	 */
	public boolean isHasNext() {
		return index >= 0 && index < getPageCount() - 1;
	}

	/**
	 * 是否有上一页
	 *
	 * @return true,如果有上一页,否则为false
	 */
	public boolean isHasPrev() {
		return index > 0 && index < getPageCount();
	}

	/**
	 * 是否有后几页,offset可以为负数
	 *
	 * @param offset
	 *            偏移量
	 * @return 如果有对应于该偏移量的页,返回true否则返回false
	 */
	public boolean isHasOffset(int offset) {
		int target = index + offset;
		return target >= 0 && target < getPageCount();
	}

	/**
	 * 获取当前页标识的数据集起始位置
	 *
	 * @return 起始位置
	 */
	public int getRecordStartIndex() {
		return index * pageSize;
	}

	/**
	 * 描述 : <获取当前页标识的数据集结束位置>. <br>
	 * <p>
	 * <使用方法说明>
	 * </p>
	 *
	 * @return
	 */
	public long getRecordLastIndex() {
		return (index + 1) * pageSize > total ? total : (index + 1) * pageSize;
	}

	public int getIndex() {
		return index;
	}

	public void setIndex(int index) {
		this.index = index;
	}

	public int getPageSize() {
		return pageSize;
	}

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

	public long getTotal() {
		return total;
	}

	public void setTotal(long total) {
		this.total = total;
	}

}
package com.common;

import com.qtsec.cloud.common.page.CP_Page;
import lombok.AllArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * <h1>分页结果封装对象</h1>
 */

@AllArgsConstructor
public class CP_BasePageResponseBody implements Serializable {
    private static final long serialVersionUID = 6062390801121609183L;
    /**
     * 查询结果list
    */
    private List records;

    /**
     * 分页信息
    */
    private CP_Page pageInfo;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.model; import javax.servlet.http.HttpServletRequest; import java.util.*; /** * 说明:参数封装Map * @version */ public class PageData extends HashMap implements Map{ private static final long serialVersionUID = 1L; Map map = null; HttpServletRequest request; public PageData(HttpServletRequest request){ this.request = request; Map properties = request.getParameterMap(); Map returnMap = new HashMap(); Iterator entries = properties.entrySet().iterator(); Entry entry; String name = ""; String value = ""; while (entries.hasNext()) { entry = (Entry) entries.next(); name = (String) entry.getKey(); Object valueObj = entry.getValue(); if(null == valueObj){ value = ""; }else if(valueObj instanceof String[]){ String[] values = (String[])valueObj; for(int i=0;i<values.length;i++){ value = values[i] + ","; } value = value.substring(0, value.length()-1); }else{ value = valueObj.toString(); } returnMap.put(name, value); } map = returnMap; } public PageData() { map = new HashMap(); } @Override public Object get(Object key) { Object obj = null; if(map.get(key) instanceof Object[]) { Object[] arr = (Object[])map.get(key); obj = request == null ? arr:(request.getParameter((String)key) == null ? arr:arr[0]); } else { obj = map.get(key); } return obj; } public static boolean hasVal(PageData pd,String key){ return pd!=null&&pd;.containsKey(key)&&!pd.getString(key).isEmpty(); } public String getString(Object key) { return (String)get(key); } public Integer getInt(Object key) { return Integer.parseInt(getString(key)); } @SuppressWarnings("unchecked") @Override public Object put(Object key, Object value) { return map.put(key, value); } @Override public Object remove(Object key) { return map.remove(key); } public void clear() { map.clear(); } public boolean containsKey(Object key) { // TODO Auto-generated method stub
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值