JSP自定义标签的目的是为了实现HTML代码重用。
1 版权标签
任何一个标签都对应一个Java 类,该类必须实现Tag接口。
<myTaglib:copyright />
2 tld标签库描述问题件
tag实现类有了,还需要在tld文件-Tag Library Descriptor 标签描述文件中配置一下。
在/WEB-INF/下新建文件taglib.tld。
3 方法的调用顺序
所有Tag接口的方法都会在执行标签的时候被JSP页面调用。通过调用setPageContext方法注释JSP的pageContext对象,通过调用setParent注释标签的父标签。而doStartTag与doEndTag分别在进入标签与退出标签的时候被执行。
4 使用TagSupport
这和集合很类似,很多时候不需要事先Tag接口,实现了pageContext与parent的getter、setter方法以及其它的一些功能。
5 带参数的标签
通过setter方法注入进去,因此只需要在java类中定义属性提供get set方法即可。
6 带标签体的标签
只要tld文件中标签的bodycontent属性不为empty,标签就可以携带标签体。
7 多次执行的循环标签
带标签体的标签可分为单次执行–Single Evaluation 与多次执行 Multiple Evaluation。
8 带动态属性的自定义标签
自定义标签支持动态属性。只要实现了DynamicAttribute接口,并实现该接口的setDynamicAttribute方法,该标签就可以使用动态属性。