📄 tabletag.java
字号:
package com.abc.tag;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
import java.util.*;
import java.beans.*;
public class TableTag extends BodyTagSupport {
List data;
String type, name;
Iterator it;
public void setData(List data) {
this.data = data;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int doStartTag() throws JspException {
try {
pageContext.getOut().write("<table border=1>");
it = data.iterator();
if (it.hasNext()) {
/*
pageContext.setAttribute(name, Beans.instantiate(getClass()
.getClassLoader(), type));
*/
pageContext.setAttribute(name, it.next());
} else {
return SKIP_BODY;
}
} catch (Exception e) {
throw new JspException(e);
}
//return EVAL_BODY_INCLUDE; please don't use the bodyContent object, use pageContext.getOut() directly
return EVAL_BODY_BUFFERED;
}
public int doAfterBody() throws JspException {
if(it.hasNext()) {
pageContext.setAttribute(name, it.next());
return EVAL_BODY_AGAIN;
}
else {
return SKIP_BODY;
}
}
public int doEndTag() throws JspException {
try {
//bodyContent.getEnclosingWriter().print("</table>");
//pageContext.getOut().println("</table>");
bodyContent.print("</table>"); //!!!!
getPreviousOut().print(bodyContent.getString());
//pageContext.getOut().println(bodyContent.getString());
} catch (Exception e) {
throw new JspException(e);
}
return EVAL_PAGE;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -