码迷,mamicode.com
首页 > 其他好文 > 详细

标签处理器类(自定义标签)ForEach

时间:2016-04-25 17:51:18      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:

该处理器的 父类  javax.servlet.jsp.tagext.SimpleTagSupport

 

public class ForEach extends SimpleTagSupport {
private Collection<?> items;
public void setItems(Collection<?> items) {
this.items = items;
}
private String var;
public void setVar(String var) {
this.var = var;
}
@Override
public void doTag() throws JspException, IOException {
//遍历items集合
if(items!=null){
for(Object obj:items){
//*把正在遍历的对象放入PageContext中 键,var 值,正在遍历的对象
getJspContext().setAttribute(var, obj);
//直接输出到页面上
getJspBody().invoke(null);
}
}
}

}

 

 

jsp页面里面模拟数据

<%
List<TestTag> tg = new ArrayList<TestTag>();
tg.add(new TestTag(1, "AAA"));
tg.add(new TestTag(2, "BBB"));
tg.add(new TestTag(3, "CCC"));
tg.add(new TestTag(4, "DDD"));
request.setAttribute("tg", tg);
%>

<!-- 使用标签库foreach -->
<c:forEach items="${requestScope.tg }" var="abc">
${abc.id}--${abc.name}<br>
</c:forEach>

<!-- 使用自定义标签foreach -->
<wlc:ForEachTag items="${requestScope.tg }" var="abc">
${abc.id}--${abc.name}<br>
</wlc:ForEachTag>

 

 

tld文件声明

<tag>
<name>ForEachTag</name>
<tag-class>cn.stud.wlc.tag.ForEach</tag-class>
<body-content>scriptless</body-content>
<attribute>
<name>items</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>var</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>

 

标签处理器类(自定义标签)ForEach

标签:

原文地址:http://www.cnblogs.com/wlc297984368/p/5431638.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!