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

📄 displaytag.java

📁 羽量级数据持久层开发框架
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// $Id: IDisplay.java $Date: 2007-10-23 9:54:19 $ 
package org.speedframework.tag;

import java.io.IOException;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;

import org.speedframework.entity.Pagination;
import org.speedframework.exception.SpeedFrameWorkTagException;
import org.speedframework.utilities.PropertiesUtil;

import java.util.List;

public class DisplayTag extends TagSupport {

	/**
	 * 
	 */
	private String template;

	/* table id */
	private String tableId;

	/* table 样式��ʽ */
	private String tableStyle;

	/* 标题���� */
	private String titles;

	/* �行ֶ� */
	private String columns;

	/* ��ݼ�数据源名称 */
	private String dataSetName;

	/* �行位置�� */
	private String columnsAlign;

	/* 是否间隔显示�Ƿ�����ʾĬ�Ϸ� */
	private String alternation;

	/* �����ɫ间隔显示颜色 */
	private String alternationColor;

	/* 分页类名称 */
	private String paginationName;

	private Pagination pagination;

	private String noColumnTips;

	private String parameter;

	private String path;

	private String contextPath;

	private String formName;

	private List dataSet;

	private String format;

	private static final long serialVersionUID = -8311950168268507692L;

	private void setDataSet() {
		this.dataSet = (List) this.pageContext.getRequest().getAttribute(
				this.dataSetName);
	}

	public String getAlternation() {
		return alternation;
	}

	public void setAlternation(String alternation) {
		this.alternation = alternation;
	}

	public String getAlternationColor() {
		return alternationColor;
	}

	public void setAlternationColor(String alternationColor) {
		this.alternationColor = alternationColor;
	}

	public String getColumnsAlign() {
		return columnsAlign;
	}

	public void setColumnsAlign(String columnsAlign) {
		this.columnsAlign = columnsAlign;
	}

	public String getDataSetName() {
		return dataSetName;
	}

	public void setDataSetName(String dataSetName) {
		this.dataSetName = dataSetName;
	}

	public String getPaginationName() {
		return paginationName;
	}

	public void setPaginationName(String paginationName) {
		this.paginationName = paginationName;
	}

	public String getColumns() {
		return columns;
	}

	public void setColumns(String showColumns) {
		this.columns = showColumns;
	}

	public String getTableId() {
		return tableId;
	}

	public void setTableId(String tableId) {
		this.tableId = tableId;
	}

	public String getTableStyle() {
		return tableStyle;
	}

	public void setTableStyle(String tableStyle) {
		this.tableStyle = tableStyle;
	}

	public String getTemplate() {
		return template;
	}

	public void setTemplate(String template) {
		this.template = template;
	}

	public String getTitles() {
		return titles;
	}

	public void setTitles(String titles) {
		this.titles = titles;
	}

	public void setPagination() {
		this.pagination = (Pagination) pageContext.getRequest().getAttribute(
				paginationName);
	}

	public String getNoColumnTips() {
		return noColumnTips;
	}

	public void setNoColumnTips(String noColumnTips) {
		this.noColumnTips = noColumnTips;
	}

	public String getParameter() {
		return parameter;
	}

	public void setParameter(String parameter) {
		this.parameter = parameter;
	}

	public String getPath() {
		return path;
	}

	public void setPath(String path) {
		this.path = path;
	}

	public String getFormName() {
		return formName;
	}

	public void setFormName(String formName) {
		this.formName = formName;
	}

	public int doStartTag() throws JspException {

		if (parameter == null) {
			parameter = "page";
		}

		if (path == null) {
			throw new NullPointerException("path is null");
		}
		if (this.columns == null) {
			throw new SpeedFrameWorkTagException("columns is not specify", null);
		}
		if (this.paginationName != null) {

			this.setPagination();
			if (pagination == null) {
				throw new NullPointerException(paginationName
						+ "is null in request");
			}
		}
		this.setContextPath();

		try {
			JspWriter out = pageContext.getOut();
			String tableid_ = this.tableId == null ? "disTbl" : this.tableId;
			if(this.alternation != null && this.alternation.equals("true")){
				String colorOne = "#cccccc";
				String colorTwo = "#f2f3f7";
				if(this.alternationColor != null){
					String[] colors = this.alternationColor.split(",");
					if(colors.length<2){
						colorOne = colors[0];
					}else{
						colorOne = colors[0];
						colorTwo = colors[1];
					}
				}
				
				this.alternationShow(out,tableid_,colorOne,colorTwo);
			}
			out.println("<table id='" + tableid_ + "'" + ">");
			if (this.titles != null) {
				out.println("<thead><tr>");
				String[] titles_ = this.titles.split(",");
				for (int i = 0; i < titles_.length; i++) {
					out.print("<td>" + titles_[i] + "</td>");
				}
				out.println("</tr></thead>");
			}
			String[] columns_ = this.columns.split(",");
			this.setDataSet();
			if (this.dataSet != null && this.dataSet.size() > 0) {
				for (int j = 0; j < this.dataSet.size(); j++) {
					out.println("<tr>");
					Object obj = this.dataSet.get(j);
					for (int k = 0; k < columns_.length; k++) {
						Object value = PropertiesUtil.getProperty(obj,
								columns_[k]);
						String values_ = value == null ? "" : value.toString();
						out.print("<td>&nbsp;" + values_ + "</td>");
					}
					out.println("</tr>");
				}
			} else {
				out.println("<tr>");
				out.println("<td colspan='" + columns_.length + ">");
				out
						.println("<font color='red'>" + this.noColumnTips == null ? "no rows show"
								: this.noColumnTips + "</font>");
				out.println("</td>");
				out.println("</tr>");

			}
			if (this.paginationName != null) {
				out.println("<tr>");
				out.println("<td align='center' colspan=" + columns_.length
						+ ">");
				if ((this.formName != null) && (this.formName.length() > 0)) {
					hasForm(out);
				} else {
					notForm(out);
				}
				out.println("&nbsp;");
				out.println("Total " + pagination.getTotalCount() + "");
				out.print("&nbsp;");
				out.println("Page " + pagination.getCount() + "");
				out.print("&nbsp;");
				out.println("Page " + pagination.getTotalPage() + " of ");
				out.print("&nbsp;");
				out.println("" + pagination.getCurrPage() + "");
				out.println("&nbsp;");
				out.println("Go to<input type=\"text\" id=\"" + this.parameter
						+ "\" class=\"textF\" size=\"3\" maxlength=\"5\">");
				out.println("&nbsp;");
				out
						.println("<button onclick=\"paginationGoto();\" style=\"border:1px ridge #d6edef;background-color:#ffffff\">Go</button>");
				// out.println("<br />");
				if ((this.formName != null) && (this.formName.length() > 0)) {

					/* ????js???? */
					createJS(out, pagination.getTotalPage());
				} else {
					createNoFormJS(out, pagination.getTotalPage());
				}

				out.println("</td>");

⌨️ 快捷键说明

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