📄 displaytag.java
字号:
// $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> " + 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(" ");
out.println("Total " + pagination.getTotalCount() + "");
out.print(" ");
out.println("Page " + pagination.getCount() + "");
out.print(" ");
out.println("Page " + pagination.getTotalPage() + " of ");
out.print(" ");
out.println("" + pagination.getCurrPage() + "");
out.println(" ");
out.println("Go to<input type=\"text\" id=\"" + this.parameter
+ "\" class=\"textF\" size=\"3\" maxlength=\"5\">");
out.println(" ");
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 + -