JSP自定义标签开发入门(1)(3)
分享于 点击 34566 次 点评:146
4 在需要使用此标签的jsp页面头部引入
- <%@ taglib uri="/mytaglib" prefix="cc"%>
5 使用(参照上面的使用步骤)
标签类说明:
我们用到了迭代接口,以下是容器处理此接口的流程

作为目标1中的补充: 在doAfterBody()如果返回值是EVAL_BODY_AGAIN那么将重新执行此方法
目标3:使用BodyTagSupport
此目标并不会使用实际例子进行显示,主要是说明为什么,什么情况下需要使用到BodyTag接口或者BodyTagSupport类?
如果我们需要在
此接口在doStartTag()方法返回值多了一个EVAL_BODY_BUFFERED,它将对主体进行计算,并输出到缓冲区(注:此处是缓冲区并非直接输出到客户端,需要我们手动(this.bodyContent.getEnclosingWriter().write(this.bodyContent.getString());)进行输出客户端的调用,否则主体内容不会进行显示)
标签类说明:
关于BodyTagSupport接口的说明

目标4:自定义的函数库
1 创建函数库类
- public class MyFunctions {
- public static String formatMyName(String name) {
- return "your name is " + name;
- }
- public static int add(int a, int b) {
- return a+b;
- }
- }
2 在TLD文件中配置 (引用于目标1中的tld文件)
- <function>
- <name>formatMyName</name>
- <function-class>com.taglib.MyFunctions</function-class>
- <function-signature>java.lang.String formatMyName(java.lang.String)</function-signature>
- </function>
- <function>
- <name>add</name>
- <function-class>com.taglib.MyFunctions</function-class>
- <function-signature>java.lang.String add(int, int)</function-signature>
- </function>
3 JSP中调用
- ${cc:formatMyName("wangfei") }
- ${cc:add(12, 34) }
原文:http://www.cnblogs.com/zhaoyang/archive/2011/12/25/2301108.html
用户点评