分页对象

DalPage :

import java.util.Collections;
import java.util.LinkedList;
import java.util.List;

/**

public class DalPage {

    private static final long serialVersionUID = -8123039538589235324L;

    /**
     * 适用于排序后取第一条数据的查询
     *
     * @return
     */
    public static DalPage getOneInstance() {
        DalPage dalPage = new DalPage();
        dalPage.setPageSize(1);
        dalPage.setCurrentPage(1);

        return dalPage;
    }

    /**
     * 创建实例
     *
     * @param pageSize
     * @param currentPage
     * @return
     */
    public static DalPage createInstance(int pageSize, int currentPage) {
        DalPage dalPage = new DalPage();
        dalPage.setPageSize(pageSize);
        dalPage.setCurrentPage(currentPage);

        return dalPage;
    }

    /**
     * 创建实例
     *
     * @param pageSize
     * @return
     */
    public static DalPage createInstance(int pageSize) {
        DalPage dalPage = new DalPage();
        dalPage.setPageSize(pageSize);
        dalPage.setCurrentPage(1);

        return dalPage;
    }

    /**
     * The Current page.
     */
    protected int currentPage = 1;
    /**
     * The Page size.
     */
    protected int pageSize = 10;
    /**
     * The Count.
     */
    protected long count;
    /**
     * The Pages.
     */
    protected int pages;
    /**
     * The Index.
     */
    protected int index;

    public void setPages(int pages) {
        this.pages = pages;
    }

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

    /**
     * Instantiates a new Dal page.
     */
    public DalPage() {
    }

    /**
     * 获取当前页面 <br>
     *
     * @return the current page
     */
    public int getCurrentPage() {
        return this.currentPage;
    }

    /**
     * 设置当前页面 <br>
     *
     * @param currentPage the current page
     */
    public void setCurrentPage(int currentPage) {
        this.currentPage = currentPage;
    }

    /**
     * 获取页面大小 <br>
     *
     * @return the page size
     */
    public int getPageSize() {
        return this.pageSize;
    }

    /**
     * 设置页面大小 <br>
     *
     * @param pageSize the page size
     */
    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }

    /**
     * 获取数量 <br>
     *
     * @return the count
     */
    public long getCount() {
        return this.count;
    }

    /**
     * 设置数量 <br>
     *
     * @param count the count
     */
    public void setCount(long count) {
        this.count = count;
        if (count > 0L) {
            this.pages = (int) (this.count / (long) this.pageSize);
            if (this.count % (long) this.pageSize > 0L) {
                ++this.pages;
            }

            if (this.currentPage > this.pages) {
                this.currentPage = this.pages;
            }

            this.index = (this.currentPage - 1) * this.pageSize;
        }
    }

    /**
     * 获取Pages <br>
     *
     * @return the pages
     */
    public int getPages() {
        return this.pages;
    }

    /**
     * 获取Indexes <br>
     *
     * @return the index
     */
    public int getIndex() {
        return this.index;
    }

    /**
     * 获取PageBar <br>
     *
     * @return the page bar
     */
    public DalPage.PageBar getPageBar() {
        return new DalPage.PageBar();
    }


    /**
     * 为了页面相关的内容设置PageBar <br>
     *
     * @author 18020760
     */
    public class PageBar {
        private static final int BLOCK_LENGTH = 5;
        private List<Integer> clickBlocks;
        private int start;
        private int end;

        /**
         * 默认构造函数 <br>
         */
        PageBar() {
            if (DalPage.this.pages == 0) {
                this.clickBlocks = Collections.emptyList();
            }

            this.start = DalPage.this.currentPage - 2 < 1 ? 1 : DalPage.this.currentPage - 2;
            this.end = this.start + 5 - 1;
            if (this.end > DalPage.this.pages) {
                this.end = DalPage.this.pages;
                this.start = this.end - 5 + 1;
            }

            if (this.start < 1) {
                this.start = 1;
            }

            this.clickBlocks = new LinkedList();

            for (int i = this.start; i <= this.end; ++i) {
                this.clickBlocks.add(i);
            }

        }

        /**
         * 获取点击块 <br>
         *
         * @return the click blocks
         */
        public List<Integer> getClickBlocks() {
            return this.clickBlocks;
        }

        /**
         * 获取之前的点击块 <br>
         *
         * @return the boolean
         */
        public boolean hasPreviousBar() {
            return DalPage.this.pages > 0 && this.start > 1;
        }

        /**
         * 获取之后的点击块 <br>
         *
         * @return the boolean
         */
        public boolean hasNextBar() {
            return DalPage.this.pages > 0 && this.end < DalPage.this.pages;
        }
    }
}

PageResultVO:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

/**
 * 分页信息前端模型
 * Created by 17032906 on 2017/9/4.
 *
 * @param <T> the type parameter
 */
public class PageResultVO<T> {

    /**
     * 分页信息
     */
    private DalPage page;

    /**
     * 分页数据
     */
    private List<T> list;

    private Object collectData;

    public Object getCollectData() {
        return collectData;
    }

    public void setCollectData(Object collectData) {
        this.collectData = collectData;
    }

    /**
     * Instantiates a new Page result vo.
     *
     * @param page the page
     * @param list the list
     */
    public PageResultVO(DalPage page, List<T> list) {
        this.page = page;
        if (list != null) {
            this.list = list;
        } else {
            this.list = new ArrayList<>();
        }
    }

    public PageResultVO(DalPage page, List<T> list, Object collectData) {
        this.page = page;
        if (list != null) {
            this.list = list;
        } else {
            this.list = new ArrayList<>();
        }
        if (null != collectData){
            this.collectData = collectData;
        }else {
            this.collectData = new HashMap();
        }
    }

    /**
     * Gets page.
     *
     * @return the page
     */
    public DalPage getPage() {
        return page;
    }

    /**
     * Sets page.
     *
     * @param page the page
     */
    public void setPage(DalPage page) {
        this.page = page;
    }

    /**
     * Gets list.
     *
     * @return the list
     */
    public List<T> getList() {
        return list;
    }

    /**
     * Sets list.
     *
     * @param list the list to set
     */
    public void setList(List<T> list) {
        this.list = list;
    }
}

ResponseUtils :

/**
 * 返回模型工具类
 */
public final class ResponseUtils {
    private ResponseUtils() {
    }

    /**
     * 成功不带数据
     *
     * @return response mode
     */
    public static ResponseMode success() {
        return new ResponseMode(HttpResponseCodeEnum.SUCCESS.getCode(),
                HttpResponseCodeEnum.SUCCESS.getMessage());
    }

    /**
     * 成功带数据
     *
     * @param data the data
     * @return response mode
     */
    public static ResponseMode success(Object data) {
        return new ResponseMode(HttpResponseCodeEnum.SUCCESS.getCode(),
                HttpResponseCodeEnum.SUCCESS.getMessage(), data);
    }

    /**
     * 失败带消息
     *
     * @param msg the msg
     * @return response mode
     */
    public static ResponseMode fail(String msg){
        return new ResponseMode(HttpResponseCodeEnum.FAILURE.getCode(),
                msg);
    }

    /**
     * 失败带数据和消息
     *
     * @param msg  the msg
     * @param data the data
     * @return response mode
     */
    public static ResponseMode fail(String msg, Object data){
        return new ResponseMode(HttpResponseCodeEnum.FAILURE.getCode(),
                msg, data);
    }

    /**
     * 失败带消息
     *
     * @param codeEnum the code enum
     * @return response mode
     */
    public static ResponseMode fail(HttpResponseCodeEnum codeEnum){
        return new ResponseMode(codeEnum.getCode(), codeEnum.getMessage());
    }

    /**
     * 无权限
     *
     * @return response mode
     */
    public static ResponseMode nopermission(){
        return new ResponseMode(HttpResponseCodeEnum.NOPERMISSION.getCode(), HttpResponseCodeEnum.NOPERMISSION.getMessage());
    }

    /**
     * 未登录
     *
     * @return response mode
     */
    public static ResponseMode notlogin(){
        return new ResponseMode(HttpResponseCodeEnum.NOTLOGIN.getCode(),
                HttpResponseCodeEnum.NOTLOGIN.getMessage());
    }
}

ResponseMode :


/**
 * 返回模型
 * Created by 17010763 on 2017/3/26.
 */
public class ResponseMode {
    /**
     * 响应码
     */
    private String ret;
    /**
     * 提示消息
     */
    private String msg;
    /**
     * 返回数据
     */
    private Object data;

    /**
     * 构造方法
     *
     * @param ret the ret
     * @param msg the msg
     */
    public ResponseMode(String ret, String msg) {
        this.ret = ret;
        this.msg = msg;
    }

    /**
     * 构造方法
     *
     * @param ret  the ret
     * @param msg  the msg
     * @param data the data
     */
    public ResponseMode(String ret, String msg, Object data) {
        this.ret = ret;
        this.msg = msg;
        this.data = data;
    }

    /**
     * getter
     *
     * @return ret ret
     */
    public String getRet() {
        return ret;
    }

    /**
     * setter
     *
     * @param ret the ret
     */
    public void setRet(String ret) {
        this.ret = ret;
    }

    /**
     * getter
     *
     * @return msg msg
     */
    public String getMsg() {
        return msg;
    }

    /**
     * setter
     *
     * @param msg the msg
     */
    public void setMsg(String msg) {
        this.msg = msg;
    }

    /**
     * getter
     *
     * @return data data
     */
    public Object getData() {
        return data;
    }

    /**
     * setter
     *
     * @param data the data
     */
    public void setData(Object data) {
        this.data = data;
    }
}

HttpResponseCodeEnum:


/**
 * 相应码枚举类
 */
public enum HttpResponseCodeEnum {

    /**
     * Success http response code enum.
     */
    SUCCESS("0000", "请求成功"),
    /**
     * Notlogin http response code enum.
     */
    NOTLOGIN("0001", "未登录"),
    /**
     * Nopermission http response code enum.
     */
    NOPERMISSION("0002","无权限"),
    /**
     * Failure http response code enum.
     */
    FAILURE("0003","请求失败");

    private String code;
    private String message;

    /**
     * 构造器
     * @param code
     * @param message
     */
    HttpResponseCodeEnum(String code, String message) {
        this.code = code;
        this.message = message;
    }

    /**
     * getter
     *
     * @return code code
     */
    public String getCode() {
        return code;
    }

    /**
     * getter
     *
     * @return message message
     */
    public String getMessage() {
        return message;
    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342