⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 supportbusiness.java

📁 一个专门用来快速开发网站的框架
💻 JAVA
字号:
package com.core.business;

/**
 * BaseBO的一个基本实现:
 * 1、翻页功能。
 */
import java.util.List;
import java.util.ArrayList;

import org.apache.commons.logging.LogFactory;
import org.apache.commons.logging.Log;

import com.core.persistence.PersistenceManager;

public class SupportBusiness implements BaseBO {
    private static Log log = LogFactory.getLog(SupportBusiness.class);
    // 翻页有关的变量。
    private int pageSize = 0; // 每一页的记录条数。
    private int pageNum = 0; // 当前页号。
    private int pageTotal = 0; // 总页数。
    private int rowTotal = 0; // 总记录数

    public SupportBusiness() {
    }

    /**
     * 执行查询操作,参数是SQL语句。
     */
    protected List query(String hql) {
        List ret = new ArrayList();
        PersistenceManager pm = new PersistenceManager();
        try {
            if (getPageSize() > 0 && getPageNum() > 0) { // 翻页
                List allObjects = pm.queryObjs(hql);
                // 计算得到总页数
                setPageTotal( (allObjects.size() - 1) / getPageSize() + 1);
                // 计算得到总纪录数
                setRowTotal(allObjects.size());
                // 调整要翻到第几页:如果pageNum大于pageSize,就把pageNum设成pageSize。
                if (getPageNum() > getPageTotal()) {
                    setPageNum(getPageTotal());
                }
                for(int i=(getPageSize() * (getPageNum() - 1));i<getPageSize();i++){
                    ret.add(allObjects.get(i));
                }
            } else { // 不翻页
                ret = pm.queryObjs(hql);
                setPageTotal(1);
                setRowTotal(ret.size());
            }
        } catch (Exception ex) {
            log.info("查询处错!查询语句是:"+hql);
        }
        return ret;
    }

    /**
     * 当前显示第几页
     */
    public int getPageNum() {
        return pageNum;
    }

    /**
     * 翻页策略:如果要翻到负数和零,就让他到第一页。
     */
    public void setPageNum(int pageNum) {
        if (pageNum <= 0) {
            this.pageNum = 1;
        } else {
            this.pageNum = pageNum;
        }
    }

    /**
     * 每一页显示几条记录。
     */
    public int getPageSize() {
        return pageSize;
    }

    /**
     * 翻页策略:如果每页大小是负数和零,就设成零。不让他翻页。
     */
    public void setPageSize(int pageSize) {
        if (pageSize <= 0) {
            this.pageSize = 0;
        } else {
            this.pageSize = pageSize;
        }
    }

    /**
     * 得到总的页数。
     */
    public int getPageTotal() {
        return pageTotal;
    }

    /**
     * 设置总的页数。
     */
    private void setPageTotal(int pageTotal) {
        this.pageTotal = pageTotal;
    }

    /**
     * 得到总的行数。
     */
    public int getRowTotal() {
        return rowTotal;
    }

    /**
     * 设置总的行数。
     */
    private void setRowTotal(int rowTotal) {
        this.rowTotal = rowTotal;
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -