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

📄 tablebean.java

📁 GridSphere 门户 提供一个基于 portlet 的高级开放源代码门户。GridSphere 是在欧盟提供基金的 GridLab 项目下开发的
💻 JAVA
字号:
/* * @author <a href="mailto:novotny@gridsphere.org">Jason Novotny</a> * @version $Id: TableBean.java 4870 2006-06-23 15:36:06Z novotny $ */package org.gridsphere.provider.portletui.beans;import org.gridsphere.provider.portletui.model.DefaultTableModel;import org.gridsphere.services.core.persistence.QueryFilter;/** * A <code>TableBean</code> provides a table element */public class TableBean extends BaseComponentBean implements TagBean {    public static final String CURRENT_PAGE = "tablepage";    public static final String SHOW_ALL = "showall";    public static final String SHOW_PAGES = "showpages";    public static final String NEXT_PAGE = "nextpage";    public static final String PREV_PAGE = "prevpage";    protected DefaultTableModel defaultModel = null;    protected String cellSpacing = null;    protected String cellPadding = null;    protected String border = null;    protected String background = null;    protected String width = null;    protected String align = null;    protected String valign = null;    protected int currentPage = 0;    protected boolean isSortable = false;    protected boolean isZebra = false;    protected String sortableId = "t1";    private int rowCount = 0;    private int maxRows = -1;    private boolean showall = false;    protected String uris = "";    protected String uriString = "";    protected String title = null;    protected int numEntries = 0;    protected boolean filter = false;    /**     * Constructs a default table bean     */    public TableBean() {        super();    }    /**     * Constructs a table bean with a supplied CSS style     *     * @param cssStyle the CSS style     */    public TableBean(String cssStyle) {        this.cssClass = cssStyle;    }    public void setQueryFilter(QueryFilter filter) {        this.numEntries = filter.getTotalItems();        this.maxRows = filter.getMaxResults();        this.filter = true;    }    /**     * Sets the default table model for this table     *     * @param defaultModel the table model     */    public void setTableModel(DefaultTableModel defaultModel) {        this.defaultModel = defaultModel;    }    /**     * Returns the default table model     *     * @return the default table model     */    public DefaultTableModel getTableModel() {        return defaultModel;    }    /**     * Returns true if a query filter is associated with this table     *     * @return true if a query filter is associated with this table     */    public boolean getFilter() {        return filter;    }    public void setFilter(boolean filter) {        this.filter = filter;    }    public int getNumEntries() {        return numEntries;    }    public void setNumEntries(int numEntries) {        this.numEntries = numEntries;    }    /**     * Sets the table width     *     * @param width the table width     */    public void setWidth(String width) {        this.width = width;    }    /**     * Returns the table width     *     * @return the table width     */    public String getWidth() {        return width;    }    /**     * Sets the table alignment e.g. "left", "center" or "right"     *     * @param align the table alignment     */    public void setAlign(String align) {        this.align = align;    }    /**     * Returns the table alignment e.g. "left", "center" or "right"     *     * @return the table alignment     */    public String getAlign() {        return align;    }    /**     * Returns the table vertical alignment e.g. 'top', 'bottom'     *     * @return the table vertical alignment     */    public String getValign() {        return valign;    }    /**     * Sets the table horizontal alignment, e.g. 'top', 'bottom'     *     * @param valign the tables horizontal alignment     */    public void setValign(String valign) {        this.valign = valign;    }    /**     * Sets the table cell spacing     *     * @param cellSpacing the table cell spacing     */    public void setCellSpacing(String cellSpacing) {        this.cellSpacing = cellSpacing;    }    /**     * Returns the table cell spacing     *     * @return the table cell spacing     */    public String getCellSpacing() {        return cellSpacing;    }    /**     * Sets the table cell spacing     *     * @param cellPadding the table cell padding     */    public void setCellPadding(String cellPadding) {        this.cellPadding = cellPadding;    }    /**     * Returns the table cell padding     *     * @return the table cell padding     */    public String getCellPadding() {        return cellPadding;    }    /**     * Sets the table background     *     * @param background the table background     */    public void setBackground(String background) {        this.background = background;    }    /**     * Returns the table background     *     * @return the table background     */    public String getBackground() {        return background;    }    /**     * Sets the table border     *     * @param border the table border     */    public void setBorder(String border) {        this.border = border;    }    /**     * Returns the tableborder     *     * @return the table border     */    public String getBorder() {        return border;    }    public void setZebra(boolean isZebra) {        this.isZebra = isZebra;    }    public boolean getZebra() {        return isZebra;    }    public void setSortable(boolean isSortable) {        this.isSortable = isSortable;    }    public boolean getSortable() {        return isSortable;    }    public void setSortableID(String sortableId) {        this.sortableId = sortableId;    }    public String getSortableID() {        return sortableId;    }    public void setRowCount(int rowCount) {        this.rowCount = rowCount;    }    public int getRowCount() {        return rowCount;    }    public void setCurrentPage(int currentPage) {        this.currentPage = currentPage;    }    public int getCurrentPage() {        return currentPage;    }    public void setMaxRows(int maxRows) {        this.maxRows = maxRows;    }    public int getMaxRows() {        return maxRows;    }    public String getTitle() {        return title;    }    public void setTitle(String title) {        this.title = title;    }    public boolean isShowall() {        return showall;    }    public void setShowall(boolean showall) {        this.showall = showall;    }    public void setURIString(String uriString) {        this.uriString = uriString;    }    public String toStartString() {        StringBuffer sb = new StringBuffer();        if (isSortable) {            sb.append("<table class=\"sortable\" id=\"" + sortableId + "\" ");        } else {            sb.append("<table" + getFormattedCss());        }        if (cellSpacing != null) sb.append(" cellspacing=\"" + cellSpacing + "\" ");        if (cellPadding != null) sb.append(" cellpadding=\"" + cellPadding + "\" ");        if (border != null) sb.append(" border=\"" + border + "\" ");        if (width != null) sb.append(" width=\"" + width + "\" ");        if (align != null) sb.append(" align=\"" + align + "\" ");        /// Removed for XHTML 1.0 Strict compliance        /*        if (valign != null) {            sb.append(" valign=\"" + valign + "\" ");        }        */        sb.append(">");        if (title != null) sb.append("<caption>" + title + "</caption>");        if (defaultModel != null) sb.append(defaultModel.toStartString());        return sb.toString();    }    public String toEndString() {        StringBuffer sb = new StringBuffer();        sb.append("</table>");        String uri = "";        if (showall) {            uri = uriString;            sb.append("<p>"); // added for XHTML 1.0 Strict compliance            String showPages = TableBean.SHOW_PAGES;            showPages = "rp_" + showPages;            sb.append("<a href=\"" + uri + "&amp;" + showPages + "\">" + this.getLocalizedText("SHOW_PAGES") + "</a>");            sb.append("</p>"); // added for XHTML 1.0 Strict compliance        }        if (maxRows > 0) {            int numpages = 0;            // formula to figure out how many pages there should be-- if it divides evenly then            // use that, otherwise need to add 1            if (numEntries != 0) {                numpages = numEntries / maxRows;                numpages += numEntries % maxRows > 0 ? 1 : 0;            } else {                numpages = rowCount / maxRows;                numpages += rowCount % maxRows > 0 ? 1 : 0;            }            //System.err.println("numpages = " + numpages);            int dispPage = currentPage + 1;            if ((dispPage == numpages) && (numpages == 1)) return sb.toString();            int c = 0;            //System.err.println("maxrows=" + maxRows + " numEntries=" + numEntries + " rowCount=" + rowCount + " numpages=" + numpages);            sb.append("<p>"); // added for XHTML 1.0 Strict compliance              sb.append(this.getLocalizedText("PAGE") + dispPage + this.getLocalizedText("OUT_OF_PAGES") + numpages);            for (int i = 0; i < numpages; i++) {                c = i + 1;                if (c == dispPage) {                    sb.append(" | <b>" + c + "</b>");                } else {                    // create an actionlink                    uris = uriString;                    //System.err.println("uri = " + uris);                    String curPage = TableBean.CURRENT_PAGE;                    curPage = "rp_" + curPage;                    uri = uris + "?" + curPage + "=" + i;                    sb.append(" | " + "<a href=\"" + uri + "\">" + c + "</a>");                }            }            if (!filter) {                uri = uriString;                sb.append(" | ");                String showall = TableBean.SHOW_ALL;                showall = "rp_" + TableBean.SHOW_ALL;                sb.append("<a href=\"" + uri + "?" + showall + "\">" + this.getLocalizedText("SHOW_ALL") + "</a>");            }            sb.append("</p>"); // added for XHTML 1.0 Strict compliance            rowCount = 0;        }        return sb.toString();    }}

⌨️ 快捷键说明

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