JSP自定义标签(4):开发jsp嵌套的标签
2011-04-08 17:43
337 查看
开发嵌套的标签:haveChildTag 实际工程中往往需要多个标签来配合完成一定的功能,嵌套的标签存在父子关系,其中,父为外层标签,子为内层标签。本实例将用两个简单的标签来演示,父标签则作出逻辑判断,如果isOutput属性为true,则输出实例108中的标签helloTag;如果为false,则不输出。 (1)第一步:开发标签实现类。 内层的标签helloTag在实例108中已有,此处不再列出。 haveChildTag.java package hello; import javax.servlet.jsp.tagext.BodyTagSupport; public class haveChildTag extends BodyTagSupport { private boolean isOutput;//是否输出子标签内容 //----标签开始时调用此方法------- public int doStartTag(){ if(isOutput) return EVAL_BODY_INCLUDE; else return SKIP_BODY; } //----标签结束时调用此方法------- public int doEndTag(){ try{ if(bodyContent!=null) bodyContent.writeOut(bodyContent.getEnclosingWriter()); }catch(Exception e){ System.out.println(e); } return EVAL_PAGE; } public boolean getIsOutput() { return isOutput; } public void setIsOutput(boolean isOutput) { this.isOutput = isOutput; } } (2)第二步:编写标签描述tld文件。 本例在myTag.tld文件中增加内容。在与之间增加的如下内容:
haveChildTag
hello.haveChildTag
jsp
isOutput true true (3)第三步:在Web应用的web.xml文件中声明标签库引用。 同样,本例与本章前面的实例使用同一个tld文件,此处不必再修改。 (4)第四步:在JSP页面中声明并调用标签。 useHaveChildTag.jsp
输出子标签时的结果:
不输出子标签时的结果:
haveChildTag
hello.haveChildTag
jsp
isOutput true true (3)第三步:在Web应用的web.xml文件中声明标签库引用。 同样,本例与本章前面的实例使用同一个tld文件,此处不必再修改。 (4)第四步:在JSP页面中声明并调用标签。 useHaveChildTag.jsp
输出子标签时的结果:
不输出子标签时的结果:
相关文章推荐
- JSP自定义标签开发(三)——标签语言的介绍
- JSP自定义标签开发(四)——带标签体的标签实现
- 自定义标签(JspFragment类、invoke方法、开发带属性的标签)
- jsp自定义标签-----嵌套标签
- 自定义标签(JspFragment类、invoke方法、开发带属性的标签)
- 自定义标签(JspFragment类、invoke方法、开发带属性的标签)
- jsp-自定义标签-传统标签开发
- JSP自定义标签开发(七)—— xx.tld标签开发之权限管理标签开发
- 自定义标签(JspFragment类、invoke方法、开发带属性的标签)
- 自定义标签(JspFragment类、invoke方法、开发带属性的标签)
- jsp自定义标签(6):开发SimpleTag标签
- JSP自定义标签开发(八)—— xx.tag自定义标签开发之分页标签(jquery + div +css 美化)
- JSP自定义标签开发(五)——标签类获取 request 、 session
- JSP自定义标签-标签属性_动力节点Java学院整理
- javaWeb 使用jsp开发 html过滤标签
- java web学习总结27:jsp简单标签开发案例和打包
- JavaWeb学习总结(二十七)——jsp简单标签开发案例和打包
- JSP标签案例-开发防盗链标签
- 深入分析JavaWeb 23 -- jsp自定义标签开发入门
- Jsp开发常用标签总结