标签的实例
来源:互联网 发布:云南精准扶贫大数据app 编辑:程序博客网 时间:2024/05/21 04:19
• 开发<c:if>标签
packagecom.hbsi.web.tag;
importjava.io.IOException;
importjavax.servlet.jsp.JspException;
importjavax.servlet.jsp.tagext.JspFragment;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public classIfTag extends SimpleTagSupport {
private boolean test;
public void setTest(boolean test) {
this.test = test;
}
@Override
public void doTag() throwsJspException, IOException {
// TODO Auto-generated methodstub
if(test){
//处理标签体
JspFragmentjf=this.getJspBody();
jf.invoke(null);
}
}
}
• 开发<c:if><c:else>标签
packagecom.hbsi.web.tag;
importjava.io.IOException;
importjavax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.JspFragment;
importjavax.servlet.jsp.tagext.SimpleTagSupport;
public classChooseTag extends SimpleTagSupport {
private boolean flag=false;
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
@Override
public void doTag() throwsJspException, IOException {
// TODO Auto-generated methodstub
//对标签体处理
JspFragmentjf=this.getJspBody();
jf.invoke(null);
}
}
packagecom.hbsi.web.tag;
importjava.io.IOException;
importjavax.servlet.jsp.JspException;
importjavax.servlet.jsp.tagext.SimpleTagSupport;
public classOtherwiseTag extends SimpleTagSupport {
@Override
public void doTag() throwsJspException, IOException {
// TODO Auto-generated methodstub
ChooseTag parent=(ChooseTag)this.getParent();
if(!parent.isFlag()){
this.getJspBody().invoke(null);
parent.setFlag(true);
}
}
}
packagecom.hbsi.web.tag;
importjava.io.IOException;
importjavax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.SimpleTagSupport;
public classWhenTag extends SimpleTagSupport {
private boolean test;
public void setTest(boolean test) {
this.test = test;
}
@Override
public void doTag() throwsJspException, IOException {
// TODO Auto-generated methodstub
//获取父标签对象
ChooseTagparent=(ChooseTag)this.getParent();
if(test&&!parent.isFlag()){
//处理标签体
this.getJspBody().invoke(null);
//有分支执行过设为真
parent.setFlag(true);
}
}
}
• 开发迭代标签
• package com.hbsi.web.tag;
•
• import java.io.IOException;
• import java.lang.reflect.Array;
• import java.util.ArrayList;
• import java.util.Arrays;
• import java.util.Collection;
• import java.util.Iterator;
• import java.util.List;
• import java.util.Map;
•
• import javax.servlet.jsp.JspException;
• import javax.servlet.jsp.tagext.SimpleTagSupport;
•
• public class ForeachTag extends SimpleTagSupport {
• private Object items;
• private String var;
• public voidsetItems(Object items) {
• this.items =items;
• }
• public void setVar(Stringvar) {
• this.var = var;
• }
• @Override
• public void doTag() throwsJspException, IOException {
• // TODOAuto-generated method stub
• //得到集合对象
• //Listlist=(List) items;
• //Iteratorit=list.iterator();
• Collectioncollection=null;
• if(itemsinstanceof Map){
• Mapmap=(Map)items;
• //两列的集合转换成单列
• collection=map.entrySet();
• }else if(itemsinstanceof Collection){
• collection=(Collection)items;
• }
• // elseif(items instanceof Object[]){
• //
• // Object[]objs=(Object[]) items;
• // //倒换到一个一个集合中
• // collection=Arrays.asList(objs);
• //
• // }
• //应用反射机制
• elseif(items.getClass().isArray()){
• collection=newArrayList();
• intlength=Array.getLength(items);
• for(inti=0;i<length;i++){
• collection.add(Array.get(items,i));
• }
•
• }
• Iteratorit=collection.iterator();
• while(it.hasNext()){
• Objectobj=it.next();//迭代出来的一个元素
• this.getJspContext().setAttribute(var,obj);
• this.getJspBody().invoke(null);
•
•
•
•
•
•
•
•
• }
• }
• }
- 自定义标签的实例
- 标签的实例
- 标签的实例应用
- Struts的标签--实例
- JSF标签的使用实例
- 自定义标签的一个实例
- 自定义标签的一个实例
- Spring 2.0的新标签----util实例
- 详解Struts标签的分类,附带实例
- 简单标签的简介和实例运用
- 简单标签的简介和实例运用
- 自定义JSP标签的应用实例
- javascript获取html标签的实例
- HTMLParser解析HTMl标签的实例
- Spring 2.0的新标签----util实例
- 基本的 HTML 标签 - 四个实例
- 自定义标签普通的不继承TagSupport的实例
- 自定义标签实例
- ToString()和Convert.ToString()的区别
- Java笔记(七) Object类与对象转型
- Java笔记(八) 多态、抽象类、final关键字和接口
- Eclipse报错找不到sun.misc.BASE64Decoder类的解决办法!
- Java笔记(九) 异常
- 标签的实例
- 还没开始工作,就开始准备跳槽了
- extern “c”再来一篇
- android 绘图Matrix的使用介绍
- C# 读取Windows注册表信息
- 自编简单bootloader完成
- IIS6.0部署MVC3--解决(您无权查看该网页403错误)(Server Application Unavailable)问题
- tcp/ip网络各层数据包的长度
- LPTSTR、LPCSTR、LPCTSTR、LPSTR的来源及意义