JSP入门 taglib
2013-10-29 10:03
113 查看
自定义标签库(taglib),将原本需要写在jsp中的java代码封装起来,成为可复用的组件。
taglib的写法和jsp动作(action)很相似,是由taglib前缀,冒号,标签名三者的组合体。其中taglib前缀是用jsp指令(direction)定义的。
<%@ taglib uri="WEB-INF/tld/lingirl.tld" prefix="lingirl" %>
1.第一步,让ForTag继承BodyTagSupport。
BodyTagSupport专门用来制作带内容的taglib,它为我们提供了几个好用的方法来处理数据。
2.第二步,为ForTag设置两个自定义参数:var和items。
对应标签中的<lingirl:for var="contact" items="${list}">
3.第三步,让ForTag处理标签内容。
为了实现循环,我们需要监听两个事件。
doStartTag()方法在标签开始时执行,要记住每次都要对类进行初始化,避免上一次的遗留数据对操作造成影响。然后判断是否
有数据需要处理,如果有,则返回EVAL_BODY_INCLUDE开始处理标签里的内容,如果没有,返回
EVAL_PAGE跳过标签内容执行标签下面的内容。
doAfterBody()方法在每次处理完标签内部内容后执行,判断循环是否已经结束,如果可以继续循环,返回
EVAL_BODY_AGAIN用循环得到新的数据再次处理标签内部内容,如果循环结束就返回
EVAL_PAGE结束标签。
第四步,进行循环时的处理
经过如此一番周折,ForTag可以从标签获得参数,并对数据进行循环处理了。
最后一步还要为它编写tld(taglibdefinition)标签库定义文件,提供给jsp指令(direction)引用。
sun就为标签库定义了一套标准,叫做jstl(java standard taglib)
java标准标签库,可以去http://jakarta.apache.org/taglibs/index.html下载apache实现的jstl
taglib的写法和jsp动作(action)很相似,是由taglib前缀,冒号,标签名三者的组合体。其中taglib前缀是用jsp指令(direction)定义的。
<%@ taglib uri="WEB-INF/tld/lingirl.tld" prefix="lingirl" %>
1.第一步,让ForTag继承BodyTagSupport。
BodyTagSupport专门用来制作带内容的taglib,它为我们提供了几个好用的方法来处理数据。
2.第二步,为ForTag设置两个自定义参数:var和items。
对应标签中的<lingirl:for var="contact" items="${list}">
3.第三步,让ForTag处理标签内容。
public int doStartTag() throws JspException { this.index = 0; if (this.process()) { return EVAL_BODY_INCLUDE; } else { return EVAL_PAGE; } } public int doAfterBody() { if(this.process()) { return EVAL_BODY_AGAIN; } else { return EVAL_PAGE; } }
为了实现循环,我们需要监听两个事件。
doStartTag()方法在标签开始时执行,要记住每次都要对类进行初始化,避免上一次的遗留数据对操作造成影响。然后判断是否
有数据需要处理,如果有,则返回EVAL_BODY_INCLUDE开始处理标签里的内容,如果没有,返回
EVAL_PAGE跳过标签内容执行标签下面的内容。
doAfterBody()方法在每次处理完标签内部内容后执行,判断循环是否已经结束,如果可以继续循环,返回
EVAL_BODY_AGAIN用循环得到新的数据再次处理标签内部内容,如果循环结束就返回
EVAL_PAGE结束标签。
第四步,进行循环时的处理
经过如此一番周折,ForTag可以从标签获得参数,并对数据进行循环处理了。
最后一步还要为它编写tld(taglibdefinition)标签库定义文件,提供给jsp指令(direction)引用。
sun就为标签库定义了一套标准,叫做jstl(java standard taglib)
java标准标签库,可以去http://jakarta.apache.org/taglibs/index.html下载apache实现的jstl
相关文章推荐
- 自定义JSP中的Taglib标签之一简单入门篇(无参数的自定义标签)
- 自定义JSP中的Taglib标签之一简单入门篇(无参数的自定义标签)
- JSP入门初级教程之Taglib Directiv
- jsp 之 入门 jsp指令(page,include,taglib)
- [教程]自定义JSP中的Taglib标签之一简单入门篇(无参数的自定义标签)
- 引入不了<%@taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>标签库的问题
- Java Servlet 和 JSP入门教程(3)
- Servlet/JSP配置入门
- JavaWeb学习总结(二十三)——jsp自定义标签开发入门
- 经典入门教程:JSP标准模板库(上)
- 最简单的JSP入门流程
- JSP页面中使用fckeditor控件入门
- 第一个JSP程序(JSP入门)
- Java Servlet 和 JSP入门教程(4)
- <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
- JSP实现自定义标签Taglib重点总结
- Java Web学习总结(13)——JSP入门
- JSP入门:include指令与jsp:include动作标志
- JAVA2 JSP绝对入门(二)(转)
- JSP 2.0 web.xml不再直接支持<taglib>标签配置