一、自定义标签的作用:
1、移除jsp页面的Java代码。
2、控制jsp页面某一部分内容是否输出。
3、控制整个JSP页面是否执行。
4、控制JSP页面的内容重复执行。
5、修改JSP页面的内容。
二、自定义标签的开发步骤:
1、首先写一个标签处理器类,去实现Tag接口,但是你要实现这个接口就要实现所有的方法,所以建议用SUN公司给你写好的默认实现类,让你的写的类去继承这个默认实现类就可以了,然后覆盖你要覆盖的方法。
2、为标签处理器类写一配置一个标签文件(tld文件),注意这个文件一定要放在WEB-INF下面。如果没有这个文件就可以去tomcat的webapp目录下找例子项目中有。然后复制里面的头部和尾部就可以了。注意,头部复制到第一个tag标签的结束标签位置就可以了。尾部就用父类的结束标签。
3、创建一个JSP文件,然后在jsp文件中引用这个标签文件。引入方式在jsp头部创建一个<%@ taglib="这里用你在tld文件中配好的URI的地址绑定就可以了,也可以用绝对路径的方式" perfix="为标签处理写一个前缀,一般写文件名"%>。
三、分析Tag接口:
1、主要的方法有:
1>、doEndTag():执行结束标签,返回值是INT。
2>、doStsartTag():执行开始标签,返回值是INT。
3>、setParent(Tag t):设置父类标签,父类标签也是一个实现Tag接口的Java类 ,在形参中引用这个类。
4>、getParent():获得父类标签。
5>、setPageContext(PageContext pc):获取PageContext,通过他我们就可以获得web应用的八个对象,request、response、session、pageContext、application、out、page、config。
6>、release()、释放标签在运行中的资源。
2、主要常量:
1>、EVAL_BODY_INCLUDE:表示执行标签体,隐含1。
2>、SKIP_BODY:不执行标签体,隐含0。
3>、SKIP_PAGE:余下的jsp部分不执行,隐含5。
4>、EVAL_PAGE:余下的jsp会执行,隐含6。